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.
nmap : les 12 commandes que vous devez connaître
Le fonctionnement du routeur
Iptables : 12 commandes à connaître
Le montage sous linux
Fail2Ban : How to protect Linux services