====== Sendmail ====== ===== Installation et configuration basique ===== Voici ce que j'ai retrouvé dans mon history concernant l'installation et la configuration de Sendmail : yum install sendmail sendmail-cf m4 mailx vi /etc/mail/sendmail.mc cd /etc/mail/ newaliases m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf systemctl restart sendmail.service mail -s "aaa" adressebidon@gmail.com tail /var/log/maillog ''%%up2date sendmail-cf%%'' => ça sert juste à mettre à jour les paquets sendmail donc osef Il avait fallu que je fasse un downgrade de Cyrus avant : ''%%yum downgrade cyrus-sasl-2.1.26-17.el7.x86_64 cyrus-sasl-lib-2.1.26-17.el7.x86_64%%'' Lignes que j'ai customisé dans le fichier ''%%/etc/mail/sendmail.mc%%'' : VERSIONID(`2018-10-01 commentaire')dnl define(`SMART_HOST', `smtp.domaine.local')dnl DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl LOCAL_DOMAIN(`ma-vm.domaine.local')dnl FIXME Attention la ligne avec SMART_HOST commence par dnl par défaut, il faut penser à enlever ça, et il faut un FQDN comme smarthost (si on met une adresse IP ça ne passe pas) ===== Masquerading du sender ===== ==== Commandes utiles ==== Editer le fichier de configuration :\\ ''%%vi /etc/mail/sendmail.mc%%'' Générer le fichier de configuration exploitable par sendmail :\\ ''%%m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf%%'' Redémarrer le service pour prise en compte de la configuration :\\ ''%%service sendmail restart ou systemctl restart sendmail.service%%'' ==== Fichier de configuration ==== Configuration à appliquer dans le fichier ''/etc/mail/sendmail.mc'' :\\ VERSIONID(`BATCH OPM 20181204')dnl define(`SMART_HOST', `smtp2.justice.gouv.fr')dnl EXPOSED_USER(`root')dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl FEATURE(masquerade_envelope)dnl FEATURE(masquerade_entire_domain)dnl MASQUERADE_AS(`justice.gouv.fr')dnl MASQUERADE_DOMAIN(`justice.gouv.fr')dnl FEATURE(`genericstable')dnl GENERICS_DOMAIN_FILE(`/etc/mail/generics-domains')dnl ==== Explication ==== La ligne suivante sert juste à indiquer une note de version, à titre informatif :\\ VERSIONID(`20181204 commentaire')dnl La ligne suivante spécifie le serveur SMTP à utiliser : define(`SMART_HOST', `mon-smtp.domaine.local')dnl La ligne suivante spécifie de n'accepter de relayer les emails qu'en provenance de ''localhost'' :\\ DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl La ligne suivante indique que les emails en provenance de l'utilisateur ''root'' ne seront pas modifiés //(normal, car root ne doit envoyer que des emails relatifs au système, aux administrateurs système)// :\\ EXPOSED_USER(`root')dnl La ligne suivante indique de modifier le champ ''RFC5321.MAILFROM'' //(enveloppe)// en + du champ ''RFC5322.FROM'' //(expéditeur affiché dans le client de messagerie)// :\\ FEATURE(masquerade_envelope)dnl Les lignes suivantes spécifient le domaine à utiliser par défaut si l'utilisateur n'est pas défini dans le ''genericstable'' : MASQUERADE_AS(`justice.gouv.fr')dnl FEATURE(masquerade_entire_domain)dnl MASQUERADE_DOMAIN(`justice.gouv.fr')dnl Les lignes suivantes servent à définir l'adresse email d'expéditeur à utiliser suivant l'utilisateur Unix qui envoie l'email //(voir plus bas "Contenu du fichier ''/etc/mail/genericstable''")// et les domaines à inspecter : FEATURE(`genericstable')dnl GENERICS_DOMAIN_FILE(`/etc/mail/generics-domains')dnl NB : Les lignes qui commencent par ''dnl'' sont des commentaires, et chaque ligne doit se terminer par cette même directive //(''dnl'')//. Les directives par rapport au MAILER doivent se trouver tout à la fin du fichier //(lignes suivantes)// : MAILER(smtp)dnl MAILER(procmail)dnl Contenu du fichier ''%%/etc/mail/generics-domains%%'' :\\ localhost.localdomain VM-OPM-BATCH-01.recette.justice.local recette.justice.local justice.gouv.fr Contenu du fichier ''%%/etc/mail/genericstable%%'' :\\ opm opm.dacs-m2@justice.gouv.fr Commande pour prise en compte du ''genericstable'' :\\ makemap hash /etc/mail/genericstable < /etc/mail/genericstable ==== Test de la configuration ==== Tests de la configuration de sendmail :\\ [root@VM-OPM-BATCH-01 mail]# sendmail -bt ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter
> /tryflags HS > /try local opm Trying header sender address opm for mailer local canonify input: opm Canonify2 input: opm Canonify2 returns: opm canonify returns: opm 1 input: opm 1 returns: opm HdrFromL input: opm AddDomain input: opm AddDomain returns: opm < @ *LOCAL* > MasqHdr input: opm < @ *LOCAL* > canonify input: opm . dacs-m2 @ justice . gouv . fr Canonify2 input: opm . dacs-m2 < @ justice . gouv . fr > Canonify2 returns: opm . dacs-m2 < @ justice . gouv . fr . > canonify returns: opm . dacs-m2 < @ justice . gouv . fr . > MasqHdr returns: opm . dacs-m2 < @ justice . gouv . fr . > HdrFromL returns: opm . dacs-m2 < @ justice . gouv . fr . > final input: opm . dacs-m2 < @ justice . gouv . fr . > final returns: opm . dacs-m2 @ justice . gouv . fr Rcode = 0, addr = opm.dacs-m2@justice.gouv.fr > /map generics opm map_lookup: generics (opm) returns opm.dacs-m2@justice.gouv.fr (0) > /try local root Trying header sender address root for mailer local canonify input: root Canonify2 input: root Canonify2 returns: root canonify returns: root 1 input: root 1 returns: root HdrFromL input: root AddDomain input: root AddDomain returns: root < @ *LOCAL* > MasqHdr input: root < @ *LOCAL* > MasqHdr returns: root < @ VM-OPM-BATCH-01 . recette . justice . local . > HdrFromL returns: root < @ VM-OPM-BATCH-01 . recette . justice . local . > final input: root < @ VM-OPM-BATCH-01 . recette . justice . local . > final returns: root @ VM-OPM-BATCH-01 . recette . justice . local Rcode = 0, addr = root@VM-OPM-BATCH-01.recette.justice.local >/try local bapt Trying header sender address bapt for mailer local canonify input: bapt Canonify2 input: bapt Canonify2 returns: bapt canonify returns: bapt 1 input: bapt 1 returns: bapt HdrFromL input: bapt AddDomain input: bapt AddDomain returns: bapt < @ *LOCAL* > MasqHdr input: bapt < @ *LOCAL* > MasqHdr returns: bapt < @ justice . gouv . fr . > HdrFromL returns: bapt < @ justice . gouv . fr . > final input: bapt < @ justice . gouv . fr . > final returns: bapt @ justice . gouv . fr Rcode = 0, addr = bapt@justice.gouv.fr > /quit ===== Fichiers de configuration ===== [[https://www.zdnet.fr/actualites/configurer-sans-peine-un-serveur-sendmail-sous-linux-2101125.htm]] Depuis la version 8.9, c'est dans le répertoire ''%%/etc/mail/%%'' que se trouvent tous les fichiers de configuration nécessaires pour faire fonctionner Sendmail.\\ Toutefois, quelques changements de nomenclature ont été opérés.\\ Le Tableau A devrait vous aider si vous utilisez une version plus ancienne. Tableau A Emplacement dans versions antérieures à 8.9 Emplacement dans version 8.9 /etc/sendmail/sendmail.cw /etc/mail/local-host-names /etc/aliases /etc/mail/aliases /etc/sendmail.ct /etc/mail/trusted-users /etc/sendmail.hf /etc/mail/helpfile ===== Liens ===== https://www.oreilly.com/library/view/sendmail-cookbook/0596004710/ch04.html\\ http://www.xeams.com/difference-envelope-header.htm\\ http://etutorials.org/Server+Administration/Sendmail/Part+I+Build+and+Install/Chapter+4.+Configure+sendmail.cf+with+m4/4.4+Masquerading/\\ https://sites.google.com/site/syscookbook/miscellaneous/sendmail\\ http://www.planet-libre.org/index.php?post_id=8739\\ Article très bien :\\ https://www.system-linux.eu/index.php?post/2009/01/27/Traitement-de-Queue-mail-Postfix {{tag>GNU_Linux Postfix Sendmail SMTP}}