SSL MailDans notre série d’articles sur la mise en place d’un serveur mail sous CentOS avec Postfix et Dovecot, ce quatrième volet sera consacré à la sécurisation du serveur, et plus précisément au chiffrement des connexions. En effet, lors de l’authentification des clients mail sur le serveur, les identifiants de connexion et les mots de passe des utilisateurs se baladent en clair sur le réseau. Pour éviter cela, nous allons ajouter le chiffrement SSL/TLS à Postfix et Dovecot.

Prérequis

Notre serveur héberge les mails pour plusieurs domaines (en l’occurrence slackbox.fr et unixbox.fr), mais Postfix et Dovecot ne peuvent gérer les certificats que pour un seul domaine. Nous avons donc besoin d’un certificat SAN multi-domaines valable pour tous les domaines que nous gérons.

Les connexions sécurisées se font via le port 465 en TCP pour le SMTPS et le port 993 en TCP pour l’IMAPS. Il faut donc songer à ouvrir ces deux ports dans le pare-feu.

Configurer le chiffrement SSL pour Postfix

Pour activer le chiffrement SSL dans Postfix, il faut éditer /etc/postfix/main.cf et ajouter quatre lignes à la stance qui gère l’authentification SMTP, en précisant le chemin vers le certificat SSL et la clé privée.

# Authentification SMTP
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_use_tls = yes
smtpd_tls_cert_file = /etc/letsencrypt/live/sd-100246.dedibox.fr/cert.pem
smtpd_tls_key_file = /etc/letsencrypt/live/sd-100246.dedibox.fr/privkey.pem
smtpd_tls_session_cache_database = btree:/etc/postfix/smtpd_scache

# Restrictions SMTP
smtpd_recipient_restrictions = permit_mynetworks,
                               permit_auth_destination,
                               permit_sasl_authenticated,
                               reject

Ensuite, il faut éditer /etc/postfix/master.cf et décommenter les lignes 26 à 28 du fichier, comme ceci.

smtps  inet  n   -   n   -   -   smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes

Configurer le chiffrement SSL pour Dovecot

Les options relatives au chiffrement SSL pour Dovecot sont rassemblées dans le fichier /etc/dovecot/conf.d/10-ssl.conf. Éditer les premières lignes de ce fichier pour activer le chiffrement SSL et indiquer le chemin vers notre certificat.

ssl = required
...
ssl_cert = </etc/letsencrypt/live/sd-100246.dedibox.fr/cert.pem
ssl_key = </etc/letsencrypt/live/sd-100246.dedibox.fr/privkey.pem

Redémarrer Postfix et Dovecot pour prendre en compte la nouvelle configuration.

$ sudo systemctl restart postfix dovecot

Configuration de Thunderbird

Voici à quoi ressemble la configuration du client mail Thunderbird avec le chiffrement SSL. Le serveur entrant se connecte sur le port 993, le serveur sortant sur le port 465. SSL/TLS est utilisé pour les connexions entrantes et sortantes.

Mozilla Thunderbird SSL/TLS

Notre connexion est désormais sécurisée, et Thunderbird ne nous affiche plus d’avertissement pour notre configuration.


La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse.

 


5 commentaires

Luigi · 20 juin 2019 à 13 h 53 min

Tu me pointes vers la source? je trouve les articles exceptionnels et faciles à suivre (bravo et merci à kikinovak), du coup je suis curieux de voir les sources … s’il y en a afin d’approfondir le sujet

kikinovak · 20 juin 2019 à 14 h 31 min

Merci pour les fleurs. Je ne compte plus mes sources. La doc officielle de tous les composants, bien sûr, mais également plein de bouquins – en anglais et en allemand. Je prends pas mal de notes, et j’essaie de faire une synthèse de tout ça.

Luigi · 20 juin 2019 à 15 h 48 min

De rien kikinovak, c’est mérité! Un jour je suis tombé sur l’un de tes articles et depuis je suis fan.
Y aura-t-il une suite pour mettre un antivirus avec postfix et vérifier les pièces jointes? 🙂
Pour l’instant je me contente de ça , https://www.server-world.info/en/note?os=CentOS_7&p=mail&f=6 mais c’est quand même moins bien expliqué qu’avec tes pages.

kikinovak · 20 juin 2019 à 18 h 59 min

Je ne sais pas encore. Je suis justement en train de peaufiner Postfix, surtout pour lutter contre les spams.

Sécuriser les connexions à Postfix et Dovecot sous CentOS 7 - My Tiny Tools · 15 juin 2019 à 9 h 34 min

[…] (Source: Journal du hacker) […]

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.