|
|
| Ligne 1 : |
Ligne 1 : |
| <!-- Page migrée depuis MoinMoin : VieCrans/GérerSesMails --> | | <!-- Page migrée depuis MoinMoin : VieCrans/GérerSesMails --> |
| {{OldMoinMoin/Archive Notice}} | | {{OldMoinMoin/Archive Notice}} |
| | | __NOTOC__ |
| = Les mails au CR@NS = | | = Les mails au CR@NS = |
| Ou comment gérer les mails que l'on reçoit à l'aide des outils présents sur <code><nowiki>zamok.crans.org</nowiki></code>. | | Ou comment gérer les mails que l'on reçoit à l'aide des outils libres présents sur zamok. |
| '''Prérequis:'''
| |
| * Se connecter à <code><nowiki>zamok.crans.org</nowiki></code> : [[Archive:WikiInformatique/ConnexionSsh|WikiInformatique/ConnexionSsh]]
| |
| * Utiliser un éditeur de texte en ligne de commande (nano, jed, emacs, vi, etc. )
| |
| | |
| == Forwarder les mails vers une nouvelle adresse ==
| |
| Il s'agit de dire à un serveur de mail de transmettre automatiquement les emails reçus à une adresse vers une autre adresse. Il suffit pour cela d'éditer le fichier <code><nowiki>.forward</nowiki></code> dans votre home sur <code><nowiki>zamok.crans.org</nowiki></code>. Exemple pas à pas :<!--START-LIST-->* Se connecter à zamok, vous obtenez un shell (i.e. une ligne de commande)
| |
| * <code><nowiki>cat > .forward [Appuyer sur Entrée]</nowiki></code>
| |
| * <code><nowiki>mon_login@mon_adresse_préférée.org [Appuyer sur Entrée]</nowiki></code>
| |
| * <code><nowiki>[Ctrl-D]</nowiki></code>
| |
| * <code><nowiki>logout [Appuyer sur Entrée]</nowiki></code> {i} C'est pour se déconnecter.
| |
| | |
| Dans ce cas, le serveur du CR@NS transmet les mails destinés à ton adresse <code><nowiki>login@crans.org</nowiki></code> vers <code><nowiki>mon_login@mon_adresse_préférée.org</nowiki></code>. Pour annuler la redirection, il suffit de supprimer le fichier <code><nowiki>.forward</nowiki></code> (taper <code><nowiki>rm .forward</nowiki></code>)
| |
| == Utiliser Procmail ==
| |
| Procmail sert à faire des trucs plus compliqués avec ses mails :-) : filtrage, redirection, programmes externes, etc.
| |
| /!\ Le mode de stockage des mails de nos serveurs est le ''maildir'' pour spécifier ce type de stockage il faut mettre un '/' à la fin des redirections. Exemple :<pre>
| |
| :0
| |
| Mail/.maildir/
| |
| </pre>
| |
| | |
| Le fichier utilisé est <code><nowiki> ~/.procmailrc</nowiki></code>. Sa syntaxe est la suivante:<pre>
| |
| :0 [flags] [ : [local_lock_file] ]
| |
| * <conditions>
| |
| <exactly one action line>
| |
| </pre>
| |
| | |
| Les conditions utilisées sont (en général) des expressions régulières (<code><nowiki>man egrep</nowiki></code>) avec un ET sous entendu. Par défaut, procmail utilise les headers du mail, en ignorant les majuscules. Le flag <code><nowiki>c</nowiki></code> permet de faire des copies d'un mail.
| |
| Les actions possibles sont:<!--START-LIST-->* <code><nowiki>!</nowiki></code> forward vers les adresses mail suivantes
| |
| * <code><nowiki>|</nowiki></code> envoie le mail vers un programme
| |
| * <code><nowiki>{ </nowiki></code> sous bloc de règles. Ne pas oublier un caractère espace après le <code><nowiki>{</nowiki></code>
| |
| | |
| Par exemple:<pre>
| |
| :0:
| |
| * ^Subject: .*travail
| |
| ! adresse@profession.com
| |
| </pre>
| |
| | |
| On trouvera de nombreux exemples dans la page de manuel de procmail : <code><nowiki>man procmailex</nowiki></code>.<br>D'autres exemples sont disponibles sur la page [[Archive:/ProcMail|/ProcMail]]
| |
| == Utiliser [[Archive:SpamAssassin|SpamAssassin]] ==
| |
| | |
| La version longue de la manière de lutter contre le SPAM et l'utilisation de Spamassassin au CR@NS se trouve ici : [[Archive:/SpamAssassin|/SpamAssassin]]
| |
| === Préliminaires ===
| |
| Commencer par mettre en place un <code><nowiki>.forward </nowiki></code> vers <code><nowiki>procmail</nowiki></code>:<pre>
| |
| "| exec /usr/bin/procmail"
| |
| </pre>
| |
| | |
| Ceci redirige tous les mails vers <code><nowiki>procmail</nowiki></code> qui va ensuite faire le tri. C'est <code><nowiki>procmail</nowiki></code> qui appelle Spam Assassin, et qui déplace (le cas échéant) les mails dans le bon répertoire.
| |
| === Mails lus en IMAP ===
| |
| Si vous lisez vos mails en IMAP, la gestion des répertoires se fait sur le serveur, donc procmail peut déplacer le spam dans un dossier, ici <code><nowiki>Mail/Spam</nowiki></code>.
| |
| Contenu du <code><nowiki>.procmailrc</nowiki></code>:<pre>
| |
| # On pipe vers SpamAssassin
| |
| # f is for filter, h header and b body piped to spamassassin and W for check
| |
| :0 Whbf
| |
| * < 256000
| |
| | spamc
| |
| | |
| # Si c'est du spam, ça part dans la mbox associée :
| |
| :0
| |
| * ^X-Spam-Status: Yes
| |
| Mail/.Spam/
| |
| | |
| # Si le serveur distant est blacklisté, et si spamassassin n'a pas reconnu le mail comme spam,
| |
| # on réécrit le sujet et on redirige tout vers le dossier Spam.
| |
| # E is for preceding condition did not match (else if)
| |
| :0 E
| |
| * ^X-Reject: 554
| |
| {
| |
| :0 Whf
| |
| * ^Subject:\/.*
| |
| | formail -i "Subject: *****SPAM***** $MATCH"
| |
|
| |
| :0
| |
| Mail/.Spam/
| |
| }
| |
| </pre>
| |
| | |
| === Mails lus en POP ===
| |
| Là il faudra se contenter de tagger l'entête du message, ou son sujet, et donc d'utiliser un filtre de message dans votre logiciel de messagerie préféré (Mozilla Thunderbird).<pre>
| |
| # On pipe tout le mail de taille inférieure à 256Ko vers spamc, le client du daemon spamassassin :
| |
| :0 Whbf
| |
| * < 256000
| |
| | spamc
| |
| | |
| # Si le serveur distant est blacklisté, et si spamassassin n'a pas reconnu le mail comme spam,
| |
| # on réécrit le sujet pour tagguer le mail.
| |
| :0
| |
| * ^X-Reject: 554
| |
| * !^X-Spam-Status: Yes
| |
| {
| |
| :0 Whf
| |
| * ^Subject:\/.*
| |
| | formail -i "Subject: *****SPAM***** $MATCH"
| |
| }
| |
| </pre>
| |
| | |
| === Calculs des scores et Filtres Bayésiens ===
| |
| Spam assassin utilise différents filtres qui donnent un score à un mail. Si le score est suffisamment élevé, le mail est considéré comme du spam.
| |
| Une catégorie particulièrement intéressante de filtres est celle des filtres bayésiens, ces fameux filtres qui "apprennent". Pour cela, il faut une base de données de messages non-spam (ham) et de spam, pour bien faire la différence. Il est conseillé de faire travailler spamassassin sur vos propres messages afin que les informations apprises correspondent à ce que vous recevez.
| |
| [[Archive:SpamAssassin|SpamAssassin]] envoie automatiquement les mails les plus louches ainsi que les mails les plus corrects à l'apprentissage. Le problème, c'est que les mails qu'il reconnait mal induisent des erreurs dans la base (ie: il va apprendre comme spam un message qu'il a mal reconnu et qui était en fait du ham).
| |
| Pour améliorer ses performances, il faut donc classer à la main les mails erronés dans des ''maildir'' puis les lui faire apprendre avec <code><nowiki>sa-learn</nowiki></code>.
| |
| Commandes:<pre>
| |
| sa-learn --spam ~/Mail/.spam_folder/cur
| |
| sa-learn --ham ~/Mail/.ham_folder/cur
| |
| </pre>
| |
| | |
| Si les ''maildir'' contiennent beaucoup de messages, leur traitement peut être long, on peut ajouter l'option <code><nowiki>--showdots</nowiki></code> pour avoir un barre de progression.
| |
| [[Archive:SpamAssassin|SpamAssassin]] sait quels mails il a déjà appris, on peut donc lui demander d'apprendre le même ''maildir'' toutes les semaines sans tronquer les statistiques. Corrolaire : on peut aussi supprimer des spams du dossier spams (les plus vieux par exemple).
| |
| === Configuration de spamassassin ===
| |
| Consulter le fichier <code><nowiki>.spamassassin/user_prefs</nowiki></code>
| |
| == Liens utiles ==
| |
| <!--START-LIST-->* [http://www.procmail.org/ procmail]
| |
| * [http://www.spamassassin.org/ spamassassin]
| |
| | |
| ----<!--START-LIST-->* CatégorieCrans/PagePérimée(Faire la doc pour spamassassin et l'y indiquer, elle existait sur www.crans.org/old_www/olddoc, il suffit de recopier)
| |
| ----CatégoriePagePublique
| |