Ce document decrit succintement comment mettre en place une solution de récupération d'emails via les logiciels Sendmail et Fetchmail.
1. Récupérez les 2 logiciels en question
Au sujet de sendmail, si vous utilisez un package RedHat, n'oubliez pas de downloader le complément sendmail-cf ,
qui contient les macros m4 nécessaires à la création facile d'un sendmail.cf.
2. Sendmail.cf ( poussez un cri d'horreur maintenant. )
Créez un fichier mes_regles.mc :
divert(0) OSTYPE(linux)dnl GENERICS_DOMAIN(domainelocal.pouet domainelocal)dnl FEATURE(local_procmail, /usr/bin/procmail)dnl LOCAL_CONFIG define('SMART_HOST', 'mail.votre_isp.com')dnl FEATURE(masquerade_envelope)dnl FEATURE(genericstable)dnl FEATURE(use_cw_file)dnl FEATURE(nouucp)dnl MAILER_DEFINITIONS MAILER(local)dnl MAILER(smtp)dnl
Repérez le repertoire “cf” contenant entre autres les macros m4 nécessaires à la génération du sendmail.cf final.
Sous Debian, /usr/share/sendmail/sendmail.cf/, /usr/src/sendmail/ sous Slackware, sous RedHat /usr/lib/sendmail-cf/
et ./ à la racine de l'archive à compiler.
Créez le fichier Makefile suivant :
( On considerera que le repertoire “cf” se situe dans /usr/share/sendmail/sendmail.cf/ )
# Makefile pour sendmail.cf M4=/usr/bin/m4 CFDIR=/usr/share/sendmail/sendmail.cf/ MCFILE=mes_regles.mc cf: $(MCFILE) $(M4) -D_CF_DIR_=$(CFDIR) $(CFDIR)/m4/cf.m4 $(MCFILE) > sendmail.cf
tapez :
# make
Ceci vous génerera un fichier sendmail.cf à copier dans le repertoire /etc/mail.
3. Reecriture
Dernier point concernant sendmail, une question frequemment posée concerne la réécriture de son adresse.
En effet, lors d'un envoi de mail, si rien n'est spécifié, le champs “From:” de l'email que vous allez envoyer sera :
utilisateur@domainelocal.pouet
où domainelocal.pouet est le domaine ( souvent exotique ) que vous aurez choisi pour votre machine.
La solution se trouve dans la généricstable. Editez le fichier /etc/mail/genericstable et ajoutez-y :
utilisateur: email@isp.com
où email@isp.com est l'adresse que vous souhaitez faire apparaitre dans vos emails.
Générez le fichier .db associé via la commande :
# makemap hash /etc/mail/genericstable.db < /etc/mail/genericstable
Demarrez maintenant sendmail par la commande :
# /usr/sbin/sendmail -bd -q1h
4. Fetchmail
Après ces sueurs froides, voici la partie facile.
Editez le fichier ~/.fetchmailrc, ajoutez-y :
poll mail.isp.com protocol pop3 username "votre_login" password "votre_password"
Vous pouvez rajouter autant de lignes de ce type que vous possedez de comptes.
Lancez alors la commande “fetchmail” et, oh magie, vos emails seront gentillement déposés dans votre mailbox :)
Allez prendre un café maintenant, vous l'avez bien mérité.