Je n'ai pas trouvé de solution pour mon post initial, mais j'ai trouvé une solution pour gérer ses mails en console, qui était ma motivation première. Je vous en fait part pour tout ceux qui en auraient besoin.
nota: si un programme n'est pas installé d'origine, yum install...
1] Configuration pour réception
1.1) Réception brut du serveur
Avec
fetchmail, on va récupérer tout nos mails du serveur mail avec le protocole imap ou pop3.
/home/$USER/.fetchmailrc
[Casper ~ 564]$ cat .fetchmailrc
set postmaster "casper-le-fantom@gmail.com"
set bouncemail
poll imap.gmail.com with proto imap
user "casper-le-fantom@gmail.com", is "Nemesis" here, and wants mda "/usr/bin/procmail -Y -d %T", options ssl;
[Casper ~ 565]$
Un paragraphe
poll défini une messagerie, on peut spécifier la récupération sur plusieurs messageries en ajoutant plusieurs paragraphe
poll. Notez que notre mot de passe n'est pas contenu dans ce fichier, à chaque utilisation de
fetchmail celui-ci nous le demande explicitement. "option ssl" indique à
fetchmail l'utilisation d'une connexion sécurisée par ssl.
On peut tester son fichier de configuration avec la commande:
[Casper ~ 539]$ fetchmail -V
en effet, les réglges que l'on a spécifié son décris en bon français, pratique.
Ces mails qui viennent d'être récupéré sont envoyé à
procmail grâce à la la ligne:
and wants mda "/usr/bin/procmail -Y -d %T"
1.2) Répartition des nouveaux mails
Avec
procmail, il s'agit d'un très puissant filtre, qui joue un peu le rôle du facteur, c'est lui qui va répartir nos mails en suivant les règles que nous lui avons indiqué.
/home/$USER/.procmailrc
[Casper ~ 565]$ cat .procmailrc
PATH=/bin:/usr/bin
MAILDIR=$HOME/Mail
DEFAULT=$MAILDIR/Boite_aux_lettres
LOGFILE=$MAILDIR/procmail.log
VERBOSE=yes
[Casper ~ 566]$
Là, il distribue notre courrier dans le fichier
/home/$USER/Courrier/Boite_aux_lettres uniquement, car je n'ai établi aucune règle. L'affaire est à votre guise pour multiplier règles et boites aux lettres... exemple:
:0
* ^To:.*mon\.compte@gmail\.com
$HOME/Mail/gmail/new
:0
* ^Subject: .*Your partner will worship you for it.*
$MAILDIR/Spam/new
:0
* ^To:.*moi@live\.fr
$HOME/Mail/hotmail/new
Principe néanmoins utile contre le spam avec ^Subject
1.3) Consultation des mails
Avec un client mail qui s'appelle
mutt, on va s'en servir juste pour lire nos mails et les supprimer sur notre machine, en écrire en vue de leur expédition...
C'est un client très complet, le fichier de config n'est pas utile dans notre situation.
2] Utilisation réception
En 2 commandes c'est fait:
2.1) Récupération
[Casper ~ 566]$ fetchmail
Entrez le mot de passe pour casper-le-fantom@gmail.com@imap.gmail.com :
fetchmail: Aucun message pour casper-le-fantom@gmail.com dans imap.gmail.com
[Casper ~ 567]$
Le mot de passe est toujours invisible, et le mode verbose (option -v) est toujours intéressant pour voir les dialogues en imap (ou un autre protocole) entre fetchmail et le serveur. Nous n'avons rien à faire.
2.2) Exploitation
[Casper ~ 570]$ mutt -f Mail/Boite_aux_lettres
Et on lance le client pour gérer comme un pro ses mails. Sans le savoir on vient de faire un serveur local de mail puisque le client est "off-line".
mutt est vraiment simple d'utilisation, il affiche en permanances toutes les touches de racourci pour une utilisation optimale, en fonction de la situation (lecture ou écriture, suppression...). La prise en main est presque intuitive... Nous pourrons le personnaliser à l'aide du fichier de config
.muttrc pour exploiter son énorme potentiel.
Pourquoi je n'ai pas laissé nos mails aller "naturellement" dans le fichier
/var/spool/mail/$USER ? Tout simplement parce que des mails, c'est personnel, et que ma partition
/home est chiffrée. Celà peut aussi simplifier la gestion...
3] Configuration pour expédition
3.1) Emission brut
Avec
msmtp, ce programme va envoyer nos mails de notre machine au serveur smtp ou est hébergée notre adresse de messagerie
/home/$USER/.msmtprc
[Casper ~ 537]$ cat .msmtprc
defaults
account gmail
host smtp.gmail.com
protocol smtp
auth on
user casper-le-fantom@gmail.com
password XXXXXXXXX
tls on
tls_starttls off
tls_certcheck off
from casper-le-fantom@gmail.com
maildomain gmail.com
account default : gmail
[Casper ~ 538]$
La connexion TLS est disponible selon le serveur.
Ce fichier contient notre mot de passe, il est donc nécéssaire de restraindre l'accès au contenu du fichier:
[Casper ~ 532]$ chmod 600 .msmtprc
Il existe même un moyen pour tester la connexion au serveur, et tester le fichier de config par la même occasion:
[Casper ~ 533]$ msmtp -S
on obtient alors plein d'informations sur le serveur, pratique.
3.2) Expédition pour le client
Maintenant il faut configurer notre client
mutt pour qu'il envoie nos mail à
msmtp. J'en ai profité pour faire quelques réglages de base, tant qu'on y est:
[Casper ~ 540]$ cat .muttrc
set folder = ~/Mail
set spoolfile = "~/Mail/Boite_aux_lettres"
set sendmail="/usr/bin/msmtp"
# Commande spécifique pour lire les mails html avec lynx (programme à installer)
set implicit_autoview
auto_view text/html application/x-pgp-message
set mailcap_path="~/.mutt/mailcap" # Un répertoire et un fichier à creer
[Casper ~ 541]$
[Casper ~ 541]$ cat .mutt/mailcap
text/html; lynx -dump -force_html %s; needsterminal; copiousoutput
[Casper ~ 542]$
Pour lancer le client dorénavant, nous taperons dans un terminal:
mutt (merci le fichier de config)
Notre client est configuré pour le minimum, gérer nos mails. Mais ce n'est pas fini, avec les immenses capacités de
mutt vous amiéliorerez encore et encore son fichier de config pour améliorer vos performances avec lui, un brin de recherche pour le code...
4] Utilisation expédition
4.1) Exploitation
Apprendre à se servir de Mutt, si on s'en sert couramment l'expérience viendra rapidement. Finalement, le mail dans le terminal c'est pas si difficile, et très instructif sur les étapes du transit des mails, avec serveur mail local (le luxe). Mais surtout, quel rendement optimal !
Au fait, sans le savoir, on vient de configurer un
MTA, MDA, MRA, MUA, et on s'en sert bien en plus 😉
Allez, à bientôt.