Contenu

Serveur mail (CentOS 7.1) 1/6 : Installation et configuration de Postfix

Cette série de documentation, va permettre d’installer un serveur de mail Postfix, Dovecot, Roundcube sécurisé avec SSL. Postfix est un serveur SMTP, c’est lui qui permet d’envoyer et de recevoir les mails

Création d’un utilisateur

Nous allons tout d’abord créé un groupe vmail qui sera utilisé pour la gestion des boites mails virtuelles

1
# groupadd vmail -g 2222

Ensuite nous créons un utilisateur vmail qui sera utilisé pour la gestion des boites mails virtuelles et qui appartiendra au groupe vmail avec un uid 2222

1
# useradd vmail -r -g 2222 -u 2222 -d /var/vmail -m -c "mail user"

Installation de Postfix

Pour installer Postfix, nous allons taper la commande suivante :

1
# yum install postfix cronie

Configuration de postfix

Avant de modifier le fichier de configuration, nous allons le sauvegarder via la commande suivante :

1
# cp /etc/postfix/main.cf{,.ori}

On va éditer le fichier de configuration de Postfix « main.cf » via la commande suivante :

1
# vi /etc/postfix/main.cf

On dé-commente la variable « inet_interfaces = all » (ligne 113) et on commente la ligne 116 « inet_interfaces = localhost » On modifie la valeur de la variable « alias_maps » (ligne 386) comme suit :

1
alias_maps = hash:/etc/postfix/aliases

On dé-commente et modifie la valeur de la variable « alias_database » (ligne 397) comme suit :

1
alias_database = $alias_maps

On ajoute les lignes suivantes à la fin du fichier :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
virtual_alias_maps = hash:/etc/postfix/vmail_aliases
virtual_mailbox_domains = hash:/etc/postfix/vmail_domains
virtual_mailbox_maps = hash:/etc/postfix/vmail_mailbox
virtual_mailbox_base = /var/vmail
virtual_minimum_uid = 2222
virtual_transport = virtual
virtual_uid_maps = static:2222
virtual_gid_maps = static:2222

smtpd_delay_reject = yes
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks, reject_invalid_helo_hostname
smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_sender, reject_unknown_sender_domain
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_pipelining, reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_unauth_destination, reject_unknown_sender_domain, reject_non_fqdn_sender, reject_unverified_recipient
smtpd_client_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_unauth_pipelining, reject_invalid_hostname, reject_non_fqdn_hostname, reject_rbl_client bl.spamcop.net, reject_rbl_client cbl.abuseat.org, reject_rbl_client zen.spamhaus.org, permit

Comme le serveur va gérer plusieurs domaine, nous allons créer un fichier de configuration pour les domaines virtuels :

1
# vi /etc/postfix/vmail_domains

On y rentre la suite, il doit y avoir un domaine par ligne :

1
mon-domaine.fr OK

Comme le serveur va gérer plusieurs domaines et plusieurs boites par domaine, nous allons créer un fichier de configuration pour les boites mails virtuelles :

1
# vi /etc/postfix/vmail_mailbox

On y rentre la suite, il doit y avoir une adresse mail avec son répertoire de stockage par ligne :

1
user@mon-domaine.fr mon-domaine.fr/user/

On créé un fichier de configuration pour les alias :

1
# vi /etc/postfix/vmail_aliases

On y rentre la suite, il doit y avoir un alias par ligne :

1
user@mon-domaine.fr user@mon-domaine.fr

On génère les tables de correspondance pour les domaines virtuels, les boites virtuelles, et les alias via les commandes suivantes :

1
2
3
4
# postmap /etc/postfix/vmail_domains
# postmap /etc/postfix/vmail_mailbox
# postmap /etc/postfix/vmail_aliases
# touch /etc/postfix/aliases

Maintenant que le domaine, la boite mail ainsi que l’alias est créé, nous allons activer le SMTP dans Postfix. Avant de modifier le fichier de configuration, nous allons le sauvegarder via la commande suivante :

1
# cp /etc/postfix/master.cf{,.ori}

Nous allons éditer le fichier master.cf, via la commande suivante :

1
# vi +/submission /etc/postfix/master.cf

et dé-commenter la ligne 16 comme ci-dessous :

1
submission inet n - n - - smtpd