postfix

Postfix : installation et configuration

Postfix est un serveur de messagerie open source appelé aussi agent de transfère de courriel ( MTA Mail Transfer Agent) qui permet de relayer les mails localement ou vers un serveur de destination en dehors du réseau.

Dans cet article nous allons voir comment installer Postfix sur Centos 8 :

1- Désinstaller sendmail :

D’abord il faut vérifier si sendmail est déja installé :

[root@mail ~]# rpm -qa | grep sendmail

S’il est installé vous obtiendrez une sortie similaire à celle illustrée ci-dessous :

[root@mail ~]# rpm -qa | grep sendmail
sendmail-8.14.7-6.el7.x86_64

Si rien n’est affiché cela veut dire que sendmil n’est pas installé .

Pour désinstaller sendmail utiliser la commande dnf ci-dessous :

[root@mail ~]# dnf remove sendmail
Loaded plugins: fastestmirror
Resolving Dependencies
--> Running transaction check
---> Package sendmail.x86_64 0:8.14.7-6.el7 will be erased
--> Finished Dependency Resolution
Dependencies Resolved
========================================================================================================================================================================
Package Arch Version Repository Size
Removing:
sendmail x86_64 8.14.7-6.el7 @base 1.7 M
Transaction Summary
Remove 1 Package
Installed size: 1.7 M
Is this ok [y/N]:

2- Install Postfix :

Vérifiez d’abord si Postfix est déja installé :

[root@mail ~]# rpm -qa | grep -i Postfix
postfix-2.10.1-9.el7.x86_64

Sinon il suffit de taper la commande ci-dessous pour l’installer :

[root@mail ~]# dnf install postfix

3- Configurer Postfix :

Le fichier de configuration de Postfix est /etc/postfix/main.cf , nous avons besoin d’éditer ce ficher pour configurer Postfix :

[root@mail ~]# vim /etc/postfix/main.cf

Décommenter les lignes ci-dessous et modifier les valeurs par ce qui correspond à votre environnement :

myhostname = smtp.mondomain.lan
mydomain = mondomain.local
myorigin = $mydomain
inet_interfaces = all
inet_protocols = all
mydestination = $myhostname, localhost.$mydomain, localhost,
mynetworks = 192.168.2.0/24, 127.0.0.0/8
home_mailbox = Maildir/

Redémarrer ensuite le service Postfix :

[root@mail ~]# systemctl restart postfix.service
[root@mail ~]# systemctl status postfix.service
● postfix.service - Postfix Mail Transport Agent
Loaded: loaded (/usr/lib/systemd/system/postfix.service; enabled; vendor preset: disabled)
Active: active (running) since Sat 2021-07-17 13:11:38 EDT; 7s ago
Process: 10150 ExecStop=/usr/sbin/postfix stop (code=exited, status=0/SUCCESS)
Process: 10165 ExecStart=/usr/sbin/postfix start (code=exited, status=0/SUCCESS)
Process: 10163 ExecStartPre=/usr/libexec/postfix/chroot-update (code=exited, status=0/SUCCESS)
Process: 10159 ExecStartPre=/usr/libexec/postfix/aliasesdb (code=exited, status=0/SUCCESS)
Main PID: 10237 (master)
CGroup: /system.slice/postfix.service
├─10237 /usr/libexec/postfix/master -w
├─10238 pickup -l -t unix -u
└─10239 qmgr -l -t unix -u
Jul 17 13:11:38 mail systemd[1]: Stopped Postfix Mail Transport Agent.
Jul 17 13:11:38 mail systemd[1]: Starting Postfix Mail Transport Agent…
Jul 17 13:11:38 mail postfix/master[10237]: daemon started -- version 2.10.1, configuration /etc/postfix
Jul 17 13:11:38 mail systemd[1]: Started Postfix Mail Transport Agent.

4- Teste du serveur Postfix :

Crée un utilisateur de test ( testpostfix dans mon cas )

[root@mail ~]# useradd testpostfix
[root@mail ~]# cat /etc/passwd |grep testpostfix
testpostfix:x:1000:1000::/home/testpostfix:/bin/bash

Vérifier l’accès au serveur via telnet :

[root@mail ~]# telnet localhost smtp
Trying ::1…
Connected to localhost.
Escape character is '^]'.
220 mail.localdomain ESMTP Postfix

Ensuite envoyer un mail de test vers une adresse mail avec la commande mail :

[root@mail ~]# echo "Contenu de mon mail" | mail -s "Sujet" adresse@courriel.fr

si votre destinataire a bien reçu le message cela veut dire que votre serveur postfix est opérationnel.