User Tools

Site Tools


informatique:linux:sendmail

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
informatique:linux:sendmail [2020/04/30 14:12] didzkovitchzinformatique:linux:sendmail [2020/11/09 10:17] (current) didzkovitchz
Line 1: Line 1:
 ====== Sendmail ====== ====== Sendmail ======
  
-<code> +===== Installation et configuration basique =====
- yum install sendmail sendmail-cf m4 +
- 1053  01/10/18 10:57:07 yum downgrade cyrus-sasl-2.1.26-17.el7.x86_64 +
- 1054  01/10/18 10:57:47 yum downgrade cyrus-sasl-lib-2.1.26-17.el7.x86_64 +
- 1055  01/10/18 10:58:01 yum install sendmail sendmail-cf m4 +
- 1056  01/10/18 10:58:40 which sendmail +
- 1057  01/10/18 10:58:45 /usr/sbin/sendmail +
- 1058  01/10/18 10:59:48 vi /etc/mail/sendmail.mc +
- 1059  01/10/18 11:08:43 m4 sendmail.mc > /etc/mail/sendmail.cf +
- 1060  01/10/18 11:08:57 cd /etc/mail/ +
- 1061  01/10/18 11:09:54 m4 sendmail.mc > /etc/mail/sendmail.cf +
- 1062  01/10/18 11:10:03 systemctl restart sendmail.service +
- 1063  01/10/18 11:11:26 mail -s "aaa" didier.loussouarn@externes.justice.gouv.fr +
- 1064  01/10/18 11:11:41 tail /var/log/maillog +
- 1065  01/10/18 11:12:11 mail +
- 1066  01/10/18 11:23:45 vi /etc/mail/sendmail.mc +
- 1067  01/10/18 11:26:21 newaliases +
- 1068  01/10/18 11:26:26 up2date sendmail-cf +
- 1069  01/10/18 11:26:32 m4 sendmail.mc > /etc/mail/sendmail.cf +
- 1070  01/10/18 11:26:38 systemctl restart sendmail.service +
- 1071  01/10/18 11:26:45 mail -s "aaa" didier.loussouarn@externes.justice.gouv.fr +
- 1072  01/10/18 11:26:56 tail /var/log/maillog +
- 1073  01/10/18 11:30:35 telnet 10.122.1.1 25 +
- 1074  01/10/18 14:03:47 ip a +
- 1075  01/10/18 14:11:52 sendmail -bp +
- 1076  01/10/18 14:13:47 vi /etc/sysconfig/network-scripts/route-eno16780032 +
- 1077  01/10/18 14:14:38 service network restart +
- 1078  01/10/18 14:14:45 telnet 10.122.1.1 25 +
- 1079  01/10/18 14:15:37  sendmail -v -q +
- 1080  01/10/18 14:15:54 sendmail -bp +
-</code>+
  
 Voici ce que j'ai retrouvé dans mon history concernant l'installation et la configuration de Sendmail : Voici ce que j'ai retrouvé dans mon history concernant l'installation et la configuration de Sendmail :
  
 <code> <code>
-yum install sendmail sendmail-cf m4+yum install sendmail sendmail-cf m4 mailx
  
 vi /etc/mail/sendmail.mc vi /etc/mail/sendmail.mc
 cd /etc/mail/ cd /etc/mail/
 newaliases newaliases
-up2date sendmail-cf => ça sert juste à mettre à jour les paquets sendmail donc osef 
 m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
 systemctl restart sendmail.service systemctl restart sendmail.service
-mail -s "aaa" didier.loussouarn@gmail.com+mail -s "aaa" adressebidon@gmail.com
 tail /var/log/maillog tail /var/log/maillog
 </code> </code>
 +
 +''%%up2date sendmail-cf%%'' => ça sert juste à mettre à jour les paquets sendmail donc osef
  
 Il avait fallu que je fasse un downgrade de Cyrus avant : Il avait fallu que je fasse un downgrade de Cyrus avant :
Line 56: Line 27:
  
 <code> <code>
-VERSIONID(`2018-10-01 D. Loussouarn')dnl +VERSIONID(`2018-10-01 commentaire')dnl 
-define(`SMART_HOST', `smtp.justice.gouv.fr')dnl+define(`SMART_HOST', `smtp.domaine.local')dnl
 DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
-LOCAL_DOMAIN(`com5sbckt801.admin.recette.justice.local')dnl+LOCAL_DOMAIN(`ma-vm.domaine.local')dnl
 </code> </code>
  
 +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'' :\\
 +<code>
 +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
 +</code>
 +
 +==== Explication ====
 +
 +La ligne suivante sert juste à indiquer une note de version, à titre informatif :\\
 +<code>
 +VERSIONID(`20181204 commentaire')dnl
 +</code>
 +
 +La ligne suivante spécifie le serveur SMTP à utiliser :
 +<code>
 +define(`SMART_HOST', `mon-smtp.domaine.local')dnl
 +</code>
 +
 +La ligne suivante spécifie de n'accepter de relayer les emails qu'en provenance de ''localhost'' :\\
 +<code>
 +DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
 +</code>
 +
 +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)// :\\
 +<code>
 +EXPOSED_USER(`root')dnl
 +</code>
 +
 +La ligne suivante indique de modifier le champ ''RFC5321.MAILFROM'' //(enveloppe)// en + du champ ''RFC5322.FROM'' //(expéditeur affiché dans le client de messagerie)// :\\
 +<code>
 +FEATURE(masquerade_envelope)dnl
 +</code>
 +
 +Les lignes suivantes spécifient le domaine à utiliser par défaut si l'utilisateur n'est pas défini dans le ''genericstable'' :
 +<code>
 +MASQUERADE_AS(`justice.gouv.fr')dnl
 +FEATURE(masquerade_entire_domain)dnl
 +MASQUERADE_DOMAIN(`justice.gouv.fr')dnl
 +</code>
 +
 +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 :
 +<code>
 +FEATURE(`genericstable')dnl
 +GENERICS_DOMAIN_FILE(`/etc/mail/generics-domains')dnl
 +</code>
 +
 +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)// :
 +<code>
 +MAILER(smtp)dnl
 +MAILER(procmail)dnl
 +</code>
 +
 +Contenu du fichier ''%%/etc/mail/generics-domains%%'' :\\
 +<code>
 +localhost.localdomain
 +VM-OPM-BATCH-01.recette.justice.local
 +recette.justice.local
 +justice.gouv.fr
 +</code>
 +
 +Contenu du fichier ''%%/etc/mail/genericstable%%'' :\\
 +<code>
 +opm     opm.dacs-m2@justice.gouv.fr
 +</code>
 +
 +Commande pour prise en compte du ''genericstable'' :\\
 +<code>
 +makemap hash /etc/mail/genericstable < /etc/mail/genericstable
 +</code>
 +
 +
 +==== Test de la configuration ====
 +
 +Tests de la configuration de sendmail :\\
 +<code>
 +[root@VM-OPM-BATCH-01 mail]# sendmail -bt
 +ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
 +Enter <ruleset> <address>
 +> /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
 +</code>
 +
 +
 +===== Fichiers de configuration =====
  
 [[https://www.zdnet.fr/actualites/configurer-sans-peine-un-serveur-sendmail-sous-linux-2101125.htm]] [[https://www.zdnet.fr/actualites/configurer-sans-peine-un-serveur-sendmail-sous-linux-2101125.htm]]
Line 73: Line 211:
 Tableau A Tableau A
 Emplacement dans versions antérieures à 8.9 Emplacement dans version 8.9 Emplacement dans versions antérieures à 8.9 Emplacement dans version 8.9
-/etc/sendmail/sendmail.cw  /etc/mail/local-host-names +/etc/sendmail/sendmail.cw  /etc/mail/local-host-names 
-/etc/aliases  /etc/mail/aliases +/etc/aliases  /etc/mail/aliases 
-/etc/sendmail.ct  /etc/mail/trusted-users +/etc/sendmail.ct  /etc/mail/trusted-users 
-/etc/sendmail.hf  /etc/mail/helpfile +/etc/sendmail.hf  /etc/mail/helpfile 
 </code> </code>
  
  
-{{tag>GNU_Linux Postfix Sendmail}}+===== 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}}
informatique/linux/sendmail.1588248771.txt.gz · Last modified: 2020/04/30 14:12 by didzkovitchz