MUA -> MTA -------------> MRA ------> MDA --------------> MUA
mutt > sendmail/postfix > fetchmail > maildrop/procmail > mutt (qui lit le maildir)

Configuration

~/.fetchmailrc (Fetchmail)

Le fichier de conf de fetchmail, qui récupère les mails, et les stocke dans /var/mail/patjennings

set daemon 60
set logfile fetchmail.log

poll ssl0.ovh.net protocol pop3:
     username "b*****@thom*****non.fr" password "xxXxXXx" is "bonjour" here keep mda "/usr/bin/maildrop";
     username "h****o@thom*****non.fr" password "xxXxXXx" is "hello" here mda "/usr/bin/maildrop";

Sur “b**@thom**non.fr”, l’option keep après is {name} here sert à laisser les mails sur le servueur une fois ramenés sur la machine.

~/.mailfilter (Maildrop)

La conf de maildrop, qui prend les mails à partir du /var/mail/patjennings, et les répartit dans le ~/Maildir

DEFAULT="$HOME/Maildir/"
BONJOUR="$DEFAULT/bonjour/INBOX/"
HELLO="$DEFAULT/hello/INBOX/"

logfile "$HOME/maildrop.log"

if (/^(To|Cc|Bcc|Delivered-To):.*bonjour@thomasguesnon.fr/)
{
  to $BONJOUR
}

if (/^(To|Cc|Bcc|Delivered-To):.*hello@thomasguesnon.fr/)
{
  to $HELLO
}

to $DEFAULT

.mutt/muttrc (Mutt)

La conf de mutt, qui se contente de lire le ~/Maildir

Envoi

sudo apt-get install sendmail sendmail-bin msmtp

w/ msmtp

# Valeurs par défaut pour tous les comptes.
defaults
auth           on
tls            on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
tls_starttls   off # important, sinon le mail ne part pas via le port 465 (ssl/tls)
syslog	       on
logfile        ~/.msmtp.log

# Exemple pour un compte ovh
account        ovh
host           ssl0.ovh.net
port           465
from           bonjour@thomasguesnon.fr
user           bonjour@thomasguesnon.fr
password       xxXxXXx
timeout	       15

# Définir le compte par défaut
account default : ovh

checker avec mailq

Notifications

Grâce à mail-notifier

sudo apt-get install mail-notifier

Ensuite, on ajoute les dossiers qu’on veut observer Ici, on sait que fetchmail récupère, transmet à maildrop qui ajoute aux dossiers qui vont bien dans le ~/Maildir. Donc, on veut écouter ~/Maildir/{compte}/INBOX. C’est celui-ci qu’on ajoute donc.

mail notification

Créer un nouveau dossier dans le maildir

cd ~/Maildir/someAccount
mkdir -p INBOX.someBox/{cur,new,tmp}

Flags

D : le message est supprimé (marqué pour la suppression)
d : le message a des pièces jointes marquées pour la suppression
K : contient une clé PGP publique
N : nouveau message
O : ancien message
P : le message est chiffré avec PGP
r : une réponse a été envoyée pour ce message
S : le message est signé par PGP et la signature a été verifiée
s : le message est signé par PGP
! : le message a l'indicateur 'important' de positionné
* : le message est marqué
----------
+ : vous êtes l'unique destinataire du message
T : vous êtes destinataire et d'autres personnes ont été placées en 'Cc'
C : une copie carbone du message vous a été adressée
F : vous êtes l'auteur du message
L : une de vos listes de diffusion est destinataire du message

Gestion des spams

à gérer au niveau du MDA (pour moi, maildrop). Voir ~/.mailfiter

ajouter au ~/.mailfilter

SPAMS="$DEFAULT/spam/" # dossier des spams ($DEFAULT est $HOME/Maildir/)

# process SPAM
if ((/^X-Spam-Flag: YES/:h) || (/^X-Spam-Status: Yes/:h) || (/^X-Spam-Tag: Yes/:h) )
{
  to $SPAMS
}