Red Hat et dérivées version SERVEUR

CentOS 7 : Installer et configurer un relais SMTP avec Postfix

Table des matières

envoi_courriel



Introduction



Cet article explique, comment en 5 minutes, il est possible de monter un serveur relais SMTP.
Ainsi, les applications installées sur ce serveur pourront envoyer des mails en les relayant vers le SMTP du fournisseur d'accès.

Installation



Pour cela, il faut installer postfix (est l'agent de transfert de courriel appelé parfois MTA) mais aussi mailx (heirloom-mailx) qui fournit la commande d'envoi de mail (pour tester)
Code BASH :
yum install postfix mailx


On active ensuite le service postfix au démarrage :
Code BASH :
systemctl enable postfix


Configuration



Le fichier de configuration de postfix est /etc/postfix/main.cf. On l'édite avec notre éditeur favori :
Code BASH :
vi /etc/postfix/main.cf


Modifier ses valeurs dans le fichier (ou les décommenter) :
Code BASH :
myhostname = serveur
myorigin = domaine.fr
mydomain =  domaine.fr
mynetworks = 127.0.0.0/8
inet_interfaces = all
mydestination =
relayhost = smtp.fai.fr


Après modification et enregistrement du fichier de configuration, on relance le service postfix :
Code BASH :
systemctl restart postfix


Configuration de l'envoi avec authentification



Pour envoyer un message sur un SMTP demandant l'authentification :
Code BASH :
vi /etc/postfix/main.cf

Ajouter ces lignes :
Code BASH :
smtp_sasl_auth_enable = yes
smtpd_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtp_sasl_mechanism_filter = login, plain


Créer le fichier /etc/postfix/sasl_passwd
Code BASH :
vi /etc/postfix/sasl_passwd


Renseigner ce fichier de cette manière :
Code BASH :
smtp.fai.fr email@fai.fr:supermotdepasse


Il faut mettre le même SMTP que le relayhost.
Générer ensuite le fichier db avec la commande postmap :
Code BASH :
postmap /etc/postfix/sasl_passwd


Puis relancer postfix :
Code BASH :
systemctl restart postfix


Il sera peut être nécessaire d'installer quelques outils en plus pour gérer le chiffrement :
Code BASH :
yum install cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain


Réécrire l'expéditeur



Par défaut, l'expéditeur est le nom du compte UNIX suivi de @domaine.fr

Pour réécrire l'expéditeur, on va ajouter dans /etc/postfix/main.cf cette ligne :

Code BASH :
sender_canonical_maps = hash:/etc/postfix/canonical_sender_address


Ecrire sous la forme suivante :
Code BASH :
unix@domaine.fr   cequonveut@domaine.fr


Ensuite, on génère la base HASH avec

Code BASH :
postmap hash:/etc/postfix/canonical_sender_address


Test de la configuration



On peut tester la configuration via la commande mail.
Voici un exemple :
Code BASH :
echo "Test de message" | mail -s "Essai Postfix" moi@domaine.fr


Débogage



Si le mail ne parvient pas à destination, vérifier dans les pourriels (courriers indésirables).
Sinon, le fichier de log peut être utile : /var/log/maillog
Pour afficher son contenu en temps réel :
Code BASH :
tailf /var/log/maillog

Cette page a été vue 73249 fois