Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

Configuration de Postfix sur la nouvelle infra des VM OVH

De AJLSM
Aller à la navigation Aller à la recherche

Depuis à peu prés fin 2017 OVH a changé drastiquement les procédures d'envoie d’émail notamment ceux qui passent par son serveur SMTP. La procédure ci-dessous décrit a configuration a appliqué sur les VM pour que Postfix marche correctement.


Notice :
La configuration des email marche correctement sur les VM ad53, mercure2 et bm-orléans. Se référer à l'une de ces VM pour la configuration d'une nouvelle VM..

1 - Utiliser (ou créer) un DNS en ajlsm.com et pointant sur l'IP de la nouvelle VM. Exemple ad53.ajlsm.com

2 - Installer le paquet procmail. Installer le paquet postfix en mode Internet. Dans le champ nom du courrier, mettre le DNS créé précédement. Exemple ad53.ajlsm.com.

3 - Ouvrir le fichier /etc/postfix/main.cf et configurer comme suit (exemple pour vm ad53)

Ubuntu

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
compatibility_level = 2
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = ad53
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, ad53-2.ajlsm.com, ad53, localhost.localdomain, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
smtputf8_enable = no
smtputf8_autodetect_classes = all
sender_canonical_maps = regexp:/etc/postfix/sender_canonical #Pour configurer le sender -> cf. conf en infra

Les champs importants à vérifier sont: myhostname myorigin mydestination mailbox_command

CentOS

smtpd_banner = $myhostname ESMTP $mail_name
biff = no
append_dot_mydomain = no
compatibility_level = 2
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = centreon.ajlsm.com
mydomain = ajlsm.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
#myorigin = /etc/mailname
#mydestination = $myhostname, localhost.$mydomain, $mydomain
mydestination =
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
smtputf8_enable = no
smtputf8_autodetect_classes = all

4 - Relancer le service postfix

sudo service postfix restart

5 - Installer le paquet mailutils pour Ubuntu ou mailx pour CentOS

6 - Vérifier que l'envoie des emails fonctionne bien avec la commande: $ echo "Test mail" | mail -s "Test Postfix" ajlsm@ajlsm.com

7 - Si ça ne marche pas, relancer la VM pour être sûr que la config postfix est chargée

8 - Ubuntu : Si cela ne fonctionne pas et que le message /var/log/syslog renvoi une erreur de ce type :

...said: 504 5.5.2 <ajlsm@LEHOSTNAME>: Sender address rejected: need fully-qualified address (in reply to RCPT TO command))

Vérifiez que le hostname est bien FQDN : Fully Qualified Domain Name.

Par exemple, ad53 n'est pas FQDN, mais ad53.ajlsm.com est FQDN.

9 - CentOS : le fichier à suivre si les messages ne partent pas est : journalctl -xe.

Il semble que Postfix ne tienne pas toujours compte du hostname déclaré dans la config Postfix décrite ci-dessus.

Exemple tutoriel pour changer correctement le hostname : https://linuxize.com/post/how-to-change-hostname-on-ubuntu-18-04/

Une fois le hostname bien nommé, relancer le service postfix.