Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
doc:reseau:fdm [19/12/2012 07:56] thuban |
doc:reseau:fdm [30/05/2023 16:05] (Version actuelle) lagrenouille [FDM : Récupérer et trier son courrier] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ===== Récupération du courrier avec fdm ===== | + | ====== FDM : Récupérer et trier son courrier ====== |
+ | * Objet : Récupération et tri des mails avec fdm | ||
+ | * Niveau requis : {{tag>débutant avisé}} | ||
+ | * Commentaires : //Vous récupérez vos mails sur votre système local et souhaitez les trier dans des boîtes mails différentes. // | ||
+ | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | ||
+ | * Suivi : {{tag>à-placer}} | ||
+ | * Création par [[user>Thuban]] le 18/12/2012 | ||
+ | * Testé par <...> le <...> | ||
+ | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=128718#p128718 |C'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
+ | |||
+ | ===== Introduction ===== | ||
Bien qu'il existe la possibilité d'utiliser les bulldozer fetchmail et procmail, je vous propose ici une solution plus légère : [[http://fdm.sourceforge.net/|fdm]]. À lui tout seul, il peut récupérer vos e-mails, les trier selon le destinataire, l'émetteur, la date, archiver vos mails... | Bien qu'il existe la possibilité d'utiliser les bulldozer fetchmail et procmail, je vous propose ici une solution plus légère : [[http://fdm.sourceforge.net/|fdm]]. À lui tout seul, il peut récupérer vos e-mails, les trier selon le destinataire, l'émetteur, la date, archiver vos mails... | ||
Ligne 5: | Ligne 15: | ||
Par la suite, vous serez en mesure de lire vos mails localement, puisqu'ils seront téléchargés dans vos dossiers. Pour cela, on utilise des dossiers appelés [[http://fr.wikipedia.org/wiki/Maildir|Maildir]], eux-mêmes composés de sous-dossier ''cur'', ''new'' et ''temp''. Pensez donc à créer ces dossiers avant de récupérer vos mails. | Par la suite, vous serez en mesure de lire vos mails localement, puisqu'ils seront téléchargés dans vos dossiers. Pour cela, on utilise des dossiers appelés [[http://fr.wikipedia.org/wiki/Maildir|Maildir]], eux-mêmes composés de sous-dossier ''cur'', ''new'' et ''temp''. Pensez donc à créer ces dossiers avant de récupérer vos mails. | ||
- | L'installation est des plus simple : ''apt-get install fdm''. | + | L'installation est des plus simple : |
+ | <code root>apt-get update && apt-get install fdm</code> | ||
Maintenant, on peut le configurer. Pour cela, créez un fichier ''~/.fdm.conf'' (le '~' représentant votre répertoire utilisateur). | Maintenant, on peut le configurer. Pour cela, créez un fichier ''~/.fdm.conf'' (le '~' représentant votre répertoire utilisateur). | ||
- | ==== Ajout des comptes ==== | + | ===== Ajout des comptes ===== |
On peut désormais préciser dans le fichier de configuration les comptes e-mail. Cela se fait avec la syntaxe suivante : | On peut désormais préciser dans le fichier de configuration les comptes e-mail. Cela se fait avec la syntaxe suivante : | ||
Ligne 20: | Ligne 31: | ||
Ce qui est précisé entre guillemets ainsi que le numéro du port est à remplacer selon vos besoins. Sachez que "compte1" est le nom donné à ce compte, pour pouvoir se repérer ensuite dans la configuration.\\ Il est tout à fait possible de définir plusieurs comptes de cette façon. Attention toutefois, pour les comptes imap ssl, remplacez ''imap'' par ''imaps'' | Ce qui est précisé entre guillemets ainsi que le numéro du port est à remplacer selon vos besoins. Sachez que "compte1" est le nom donné à ce compte, pour pouvoir se repérer ensuite dans la configuration.\\ Il est tout à fait possible de définir plusieurs comptes de cette façon. Attention toutefois, pour les comptes imap ssl, remplacez ''imap'' par ''imaps'' | ||
- | ==== fdm le facteur du système ==== | + | ===== fdm le facteur du système ===== |
Pour recevoir les mails du système, ajoutez ces lignes au fichier de | Pour recevoir les mails du système, ajoutez ces lignes au fichier de | ||
- | configuration ~/.fdm.conf : | + | configuration ''~/.fdm.conf'' : |
<code> | <code> | ||
account "stdin" disabled stdin | account "stdin" disabled stdin | ||
</code> | </code> | ||
- | Puis ceci dans le fichier ~/.forward, avec les `"` : | + | Puis ceci dans le fichier ''~/.forward'', avec les ''"'' : |
<code> | <code> | ||
"|/usr/bin/fdm -m -a stdin fetch" | "|/usr/bin/fdm -m -a stdin fetch" | ||
</code> | </code> | ||
- | ==== Définir des actions ==== | + | ===== Définir des actions ===== |
- | [[http://fdm.sourceforge.net/|fdm]] utilise un système d'"actions" pour traiter vos e-mails. Par exemple, on peut définir une action nommée "inlaposte", pour déplacer les messages dans le dossier [[http://fr.wikipedia.org/wiki/Maildir|maildir]] "/home/xavier/Maildir/laposte".\\ Afin de se simplifier la vie, vous pouvez écrire ''%h'' à la place de ''/home/utilisateur'', fdm le comprendra. | + | [[http://fdm.sourceforge.net/|fdm]] utilise un système d'"actions" pour traiter vos e-mails. Par exemple, on peut définir une action nommée "inlaposte", pour déplacer les messages dans le dossier [[http://fr.wikipedia.org/wiki/Maildir|maildir]] ''/home/xavier/Maildir/laposte''.\\ Afin de se simplifier la vie, vous pouvez écrire ''%h'' à la place de ''/home/utilisateur'', fdm le comprendra. |
Voici donc un exemple pour déplacer du courrier dans un dossier précis : ''action "inlaposte" maildir "%h/Maildir/laposte"'' | Voici donc un exemple pour déplacer du courrier dans un dossier précis : ''action "inlaposte" maildir "%h/Maildir/laposte"'' | ||
- | ==== Récupérer les mails ==== | + | ===== Récupérer les mails ===== |
On va maintenant dire à fdm de placer les courriels destinés à ce compte dans le dossier correspondant. On écrit alors plus bas : | On va maintenant dire à fdm de placer les courriels destinés à ce compte dans le dossier correspondant. On écrit alors plus bas : | ||
Ligne 44: | Ligne 55: | ||
</code> | </code> | ||
- | ==== Gestion des spams ==== | + | ===== Gestion des spams ===== |
Pour gérer les spams, je vous conseille [[http://bogofilter.sourceforge.net/faq_fr.shtml|bogofilter]].\\ Je vous propose le comportement suivant : un mail arrive, bogofilter vérifie s'il s'agit d'un spam, et si oui, il ajoute un en-tête à ce spam. Ensuite, fdm se charge de placer les éventuels spam dans un dossier prévu à cet effet : ''~/Maildir/spam'' | Pour gérer les spams, je vous conseille [[http://bogofilter.sourceforge.net/faq_fr.shtml|bogofilter]].\\ Je vous propose le comportement suivant : un mail arrive, bogofilter vérifie s'il s'agit d'un spam, et si oui, il ajoute un en-tête à ce spam. Ensuite, fdm se charge de placer les éventuels spam dans un dossier prévu à cet effet : ''~/Maildir/spam'' | ||
Ligne 66: | Ligne 77: | ||
Ces trois lignes font passer tous (all) les mails à l'action antispam, puis continue. Ensuite, on vérifie sir dans les en-têtes des mails (headers) sont présentes les lignes ''X-Spam-Status: Yes'' et ''X-Bogosity: Yes'' témoignant de la nature spam du mail. Si oui, alors ce mail est passé à l'action "inspam", et placé dans le dossier des spams. | Ces trois lignes font passer tous (all) les mails à l'action antispam, puis continue. Ensuite, on vérifie sir dans les en-têtes des mails (headers) sont présentes les lignes ''X-Spam-Status: Yes'' et ''X-Bogosity: Yes'' témoignant de la nature spam du mail. Si oui, alors ce mail est passé à l'action "inspam", et placé dans le dossier des spams. | ||
- | ==== Listes de diffusion ==== | + | ===== Listes de diffusion ===== |
De la même façon, on peut placer les mails destinés à une liste de diffusion dans un dossier à part. Cela se passe avec des expressions régulières ([[https://fr.wikipedia.org/wiki/Expression_rationnelle|regexp]]) qui peuvent être trouvées dans le header ou le corps (body) du message : | De la même façon, on peut placer les mails destinés à une liste de diffusion dans un dossier à part. Cela se passe avec des expressions régulières ([[https://fr.wikipedia.org/wiki/Expression_rationnelle|regexp]]) qui peuvent être trouvées dans le header ou le corps (body) du message : | ||
Ligne 74: | Ligne 85: | ||
</code> | </code> | ||
- | ==== Archivage ==== | + | ===== Archivage ===== |
[[http://fdm.sourceforge.net/|fdm]] peut apparement archiver les mails plus vieux de n jours. Voici ce que l'on ajoute dans le fichier de configuration pour ce faire : | [[http://fdm.sourceforge.net/|fdm]] peut apparement archiver les mails plus vieux de n jours. Voici ce que l'on ajoute dans le fichier de configuration pour ce faire : | ||
Ligne 101: | Ligne 112: | ||
===== Un exemple? ===== | ===== Un exemple? ===== | ||
- | Cela fait beaucoup d'un coup. Vous trouverez plusieurs exemples dans /usr/share/doc/fdm/examples. Voici mon propre fdm.conf : | + | Cela fait beaucoup d'un coup. Vous trouverez plusieurs exemples dans ''/usr/share/doc/fdm/examples''. |
- | + | ||
- | <code> | + | |
- | # Quelques options : | + | |
- | #set verify-certificates | + | |
- | set unmatched-mail keep | + | |
- | set parallel-accounts 2 | + | |
- | + | ||
- | # Les courriels plus vieux que %max_age sont archivés | + | |
- | %max_age = 30 | + | |
- | + | ||
- | # simple actions | + | |
- | action "drop" drop | + | |
- | action "keep" keep | + | |
- | # actions à réaliser sur les mails | + | |
- | action "inlaposte" maildir "%h/Maildir/laposte" | + | |
- | action "infac" maildir "%h/Maildir/fac" | + | |
- | action "inlavabit" maildir "%h/Maildir/lavabit" | + | |
- | action "intoilelibre" maildir "%h/Maildir/toilelibre" | + | |
- | action "inboiteaspam" maildir "%h/Maildir/bas" | + | |
- | + | ||
- | # Bogofilter super antispam | + | |
- | action "antispam" rewrite "bogofilter -u -e -p" | + | |
- | action "inspam" maildir "%h/Maildir/spam" | + | |
- | + | ||
- | # Listes de diffusion | + | |
- | action "suckless" maildir "%h/Maildir/devlists/suckless" | + | |
- | action "gnewsense" maildir "%h/Maildir/devlists/gnewsense" | + | |
- | action "xfce" maildir "%h/Maildir/devlists/xfce" | + | |
- | action "debian" maildir "%h/Maildir/devlists/debian" | + | |
- | action "hurd" maildir "%h/Maildir/devlists/hurd" | + | |
- | + | ||
- | ### archiving action | + | |
- | action "archive" mbox "$h/Maildir/archive/%[maildir]-%yq%Q" compress | + | |
- | + | ||
- | ### | + | |
- | # Comptes courriel : | + | |
- | account "laposte" imap server "imap.laposte.net" | + | |
- | user "xavier.cartron" pass "thuban1712x" | + | |
- | account "fac" imaps server "imaps.etu.univ-nantes.fr" port 993 | + | |
- | user "e072767U" pass "alsipsclar" | + | |
- | account "lavabit" imaps server "imap.lavabit.com" port 993 | + | |
- | user "bcnofne" pass "alsipsclar1712" | + | |
- | account "toilelibre" imaps server "imap.singularity.fr" port 993 | + | |
- | user "thuban@singularity.fr" pass "thuban17_12" | + | |
- | account "boiteaspam" imap server "imap.laposte.net" | + | |
- | user "lilliput23" pass "thuban1712" | + | |
- | account "stdin" disabled stdin | + | |
- | ### | + | |
- | + | ||
- | # Archivage | + | |
- | account "archive" disabled maildirs { | + | |
- | "%h/Maildir/laposte/" | + | |
- | "%h/Maildir/lavabit/" | + | |
- | "%h/Maildir/fac/" | + | |
- | "%h/Maildir/toilelibre/" | + | |
- | "%h/Maildir/bas/" | + | |
- | "%h/Maildir/devlists/" | + | |
- | } | + | |
- | match account "archive" and age > %{max_age} days action "archive" | + | |
- | match account "archive" action "keep" | + | |
- | + | ||
- | # Tout passe par l'antispam | + | |
- | match all action "antispam" continue | + | |
- | match "^X-Spam-Status: Yes" in headers action "inspam" | + | |
- | match "^X-Bogosity: Yes" in headers action "inspam" | + | |
- | + | ||
- | # Filtres pour les liste de diffusion : | + | |
- | match "^(From|Cc|To|List-Id).*@suckless\\.org" in headers action "suckless" | + | |
- | match "^(From|Cc|To|List-Id).*@gnu\\.org" in headers action "hurd" | + | |
- | match "^(From|Cc|To|List-Id).*@nongnu\\.org" in headers action "gnewsense" | + | |
- | match "^(From|Cc|To|List-Id).*@xfce\\.org" in headers action "xfce" | + | |
- | match "^(From|Cc|To|List-Id).*debian.*@lists\\.debian\\.org" in headers action "debian" | + | |
- | + | ||
- | # On envoie les mails dans leurs boîtes | + | |
- | match account "laposte" action "inlaposte" | + | |
- | match account "fac" action "infac" | + | |
- | match account "lavabit" action "inlavabit" | + | |
- | match account "toilelibre" action "intoilelibre" | + | |
- | match account "boiteaspam" action "inboiteaspam" | + | |
- | + | ||
- | # On attrape tout ce qui n'a pas été filtré | + | |
- | match all action "inlaposte" | + | |
- | </code> | + |