informatique:nix:linux:linux_reseau:postfix

root@mail-npmoxsys:~# cat /etc/postfix/transport
outlook.com smtp:[smtp.domain.com]
hotmail.com smtp:[smtp.domain.com]

Dans /etc/postfix/main.cf :

transport_maps =
    proxy:ldap:/etc/postfix/ldap/transport_maps_user.cf
    proxy:ldap:/etc/postfix/ldap/transport_maps_domain.cf
    hash:/etc/postfix/transport
postmap transport
echo "this is the mail" | sendmail -F "Bogus User" -f bogususer@some.net recipient@destination.address

Installation de Postfix

  • Si le serveur est en intranet yum peut être utilisé pour faire l'installation :
yum install postfix
  • Si le serveur est en DMZ il faut récupérer le rpm (via ftp ou autre) sur le master Linux parsl9000157 qui correspond à la version de Red Hat installée.

⇒ pour vérifier cat /etc/redhat-release

Red Hat 4
/apps/kickstart/RedHat_4.0AS/x86_64/RHEL4-U2/RedHat/RPMS/postfix-2.1.5-4.2.RHEL4.x86_64.rpm
/apps/kickstart/RedHat_4.0AS/x86_64/RHEL4-U4/RedHat/RPMS/postfix-2.2.10-1.RHEL4.2.x86_64.rpm
/apps/kickstart/RedHat_4.0AS/x86_64/RHEL4-U5/RedHat/RPMS/postfix-2.2.10-1.1.el4.x86_64.rpm
/apps/kickstart/RedHat_4.0AS/x86_64/RHEL4-U6/RedHat/RPMS/postfix-2.2.10-1.1.el4.x86_64.rpm
Red Hat 3
/apps/kickstart/RedHat_3.0AS/i386/RHEL3-U4/RedHat/RPMS/postfix-2.0.16-14.RHEL3.i386.rpm
/apps/kickstart/RedHat_3.0AS/i386/RHEL3-U6/RedHat/RPMS/postfix-2.0.16-14.RHEL3.i386.rpm
/apps/kickstart/RedHat_3.0AS/i386/RHEL3-U8/RedHat/RPMS/postfix-2.0.16-14.RHEL3.i386.rpm
/apps/kickstart/RedHat_3.0AS/i386/RHEL3-U9/RedHat/RPMS/postfix-2.0.16-14.RHEL3.i386.rpm

Puis on lance l'install :

rpm -ivh postfix-2.x.x-x.rpm

Suppression de Sendmail

Si Sendmail est déjà installé il faut le désinstaller, pour vérifier sa présence :

rpm -qa|grep sendmail
  • On le supprime ainsi que procmail :
rpm -e `rpm -qa |egrep "procmail|sendmail"`

Vérification de la demande IRIS

Au préalable la mise en oeuvre applicative doit avoir effectué une demande IRIS pour permettre l'envoi de mail via une passerelle SMTP dans laquelle il faut récupérer l'adresse de sortie ainsi que le nom DNS complet du serveur de mail. Ici nous prendrons adresse@domain.com et PARAPPSMTP3. Parfois le nom de serveur indiqué est incorrect, il faut alors cliquer sur le lien Notes pour afficher le nom complet.

  • Dans le fichier /etc/postfix/main.cf on doit avoir :
relayhost = PARAPPSMTP3.fr.net.intra
myhostname = server1102931.fr.net.intra
sender_canonical_maps = hash:/etc/postfix/canonical
  • Créer le fichier /etc/postfix/canonical pour la réécriture des adresses de sortie :
root    adresse@domain.com

Ici quand un mail est envoyé à partir de root l'adresse de sortie est adresse@domain.com (contrainte de sécurité). On peut spécifier autant d'adresses que nécessaires.

  • Créer la table à partir du fichier avec la commande :
postmap /etc/postfix/canonical
  • Recharger Postfix avec la commande :
postfix reload

Tests

  • Tester l'envoi de mail avec la commande suivante, par ex. :
echo "test" |mail -s "Test envoi de mail" nom.prenom@societe.com
  • Dans le fichier /var/log/maillog on trouve :
Apr 11 14:16:39 server1102931 postfix/pickup[14282]: 9B5101003D: uid=0 from=<root>
Apr 11 14:16:39 server1102931 postfix/cleanup[14458]: 9B5101003D: message-id=<20.9B@server1102931.fr.net.intra>
Apr 11 14:16:39 server1102931 postfix/nqmgr[14283]: 9B5101003D: from=<adresse@domain.com>, size=347, nrcpt=1
  (queue active)
Apr 11 14:16:39 server1102931 postfix/smtp[14460]: 9B5101003D: to=<nom.prenom@societe.com>,
  relay=vip-v-smtp-pop.fr.net.intra[X.X.X.X], delay=0, status=sent (250 Message accepted for delivery)
  • informatique/nix/linux/linux_reseau/postfix.txt
  • Dernière modification : 2023/11/11 11:12
  • de ben