[MAC/LINUX] Postfix configuration serveur smtp relay
mercredi 19 décembre 2018Sur mon mac, ou sur les serveurs Linux, on peut configurer postfix server de relay smtp.
Par défaut sur mac ce service est installé.
Sous linux:
apt install postfixIl suffit donc de le configurer correctement.
Il est installé par défaut dans
/etc/postfix
Il faut aussi être sur que le serveur linux possède son module sasl pour sécuriés les mails avec google:
apt install libsasl2-modules
Sans quoi on obtient l’erreur suivante SASL authentication failed; dans /var/log/mail.log
Le fichier principal de configuration se trouve:
sudo nano /etc/postfix/main.cf
Ce fichier est très important et change en fonction des versions de votre Mac OS X.
Dans mon cas, j’utilise postfix comme relai vers GMAIL
mail_owner = postfix inet_protocols = all # Postfix as relay # #Gmail SMTP relayhost=[smtp.gmail.com]:587 # Enable SASL authentication in the Postfix SMTP client. smtpd_sasl_auth_enable=yes smtp_sasl_auth_enable=yes smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = smtp_sasl_mechanism_filter = AUTH LOGIN # Enable Transport Layer Security (TLS), i.e. SSL. smtp_use_tls=yes smtp_tls_security_level=encrypt tls_random_source=dev:/dev/urandom compatibility_level = 2
Ensuite, il faut configurer les credentials de votre compte GMAIl pour le smtp.
Pour cela on rajoute le username/mot de passe dans
sudo nano /etc/postfix/sasl_passwd
Il faut aussi s’assurer que le fichier est lisible par le user postfix
sudo chown postfix sasl_passwd
Attention le fichier sasl_passwd.db qui sera généré doit aussi être lisible par postfix user.
Comme ceci:
[smtp.gmail.com]:587 username@gmail.com:password
Il reste à appliquer ces changements à postfix:
sudo postmap /etc/postfix/sasl_passwd
Si vous avez le message d’erreur suivant:
postfix: Postfix is running with backwards-compatible default settings postfix: See http://www.postfix.org/COMPATIBILITY_README.html for details postfix: To disable backwards compatibility use "postconf compatibility_level=2" and "postfix reload"
Il faut exécuter la commande suivante:
sudo postconf compatibility_level=2
Sans quoi dans mon cas le service ne se lance pas.
Pour lancer le service postfix
sudo postfix start
Pour voir le contenu de la queue des mails:
mailq
Pour tester l’envoi de mail:
date | mail -s "Test Email" YOUR_EMAIL@gmail.com