Dovecot est une application open source qui vous permet de recevoir des e-mails sur un serveur Linux en toute sécurité à la fois via le protocole IMAP et POP3.
Dans ce tutoriel, toutes les étapes nécessaires pour configurer Dovecot sur Ubuntu 18.04 sont expliquées.
Configuration des enregistrements DNS
Avant de procéder à l'installation proprement dite de Dovecot, assurez-vous que les enregistrements de domaine sont correctement définis.
En supposant que vous possédez le domaine domain.com, la première chose à faire est de configurer un enregistrement de troisième niveau A nommé "mail" et de le faire pointer vers la même adresse. Ensuite pour recevoir des emails sur votre serveur, créez un enregistrement de type MX qui pointe vers le domaine de troisième niveau que vous venez de créer.
NOM D'HÔTE | TYPE | VALEUR |
courrier | A | [SERVER_IP] |
MX | mail.domaine.com |
À ce stade, vous pouvez vous connecter à votre serveur via une connexion SSH. Si vous ne l'avez pas encore fait, il est recommandé de suivre notre guide pour vous connecter en toute sécurité avec SSH. Dans le cas d'un serveur local, passez à l'étape suivante et ouvrez le terminal de votre serveur.
Installation pigeonnier
Après vous être connecté au serveur via SSH, installez Dovecot en exécutant la commande suivante :
$ sudo apt update && sudo
apt install dovecot-core dovecot-pop3d dovecot-imapd
Tous les fichiers de configuration Dovecot sont présents dans le répertoire /etc/dovecot/. Dans ce répertoire il y a plusieurs fichiers. Chaque fichier concerne un ensemble spécifique de paramètres inclus par le fichier principal, une fois le service démarré. Le service, c'est-à-dire dovecot.conf, doit être modifié comme suit :
# Abilitiamo i protocolli IMAP e POP3
protocols = imap pop3
#Allows Dovecot to listen to all input connections (ipv4 / ipv6)
listen = *, ::
Un autre paramètre important est présent dans le fichier de configuration /etc/dovecot/conf.d/10-mail.conf :
mail_location = maildir:~/Maildir
Ce paramètre vous permet d'indiquer le chemin approprié pour enregistrer tous les e-mails reçus des utilisateurs. Dans l'exemple ci-dessus, le répertoire Maildir présent dans le home de l'utilisateur de référence est en cours de définition.
Un autre paramètre utile dans le fichier /etc/dovecot/conf.d/20-pop3.conf permet de maintenir la compatibilité avec certains anciens clients Outlook :
pop3_uidl_format = %08Xu%08Xv
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
Créer un utilisateur
La configuration actuelle de Dovecot est basée sur les utilisateurs présents dans le système pour accéder aux boîtes aux lettres. Après avoir terminé l'installation de base, procédez en créant le premier utilisateur :
# User creation
$ sudo useradd john -m
# set password of user
$ sudo passwd john
# mails directory
$ sudo mkdir /home/john/Maildir
$ sudo chown john:john /home/john/Maildir
$ sudo chmod -R 700 /home/john/Maildir
Configuration du pare-feu
En cas de pare-feu sur votre système, configurez-le pour permettre le trafic de messagerie.
Lorsque vous utilisez le pare-feu UFW, des profils préinstallés pour Dovecot sont fournis. Voyons donc comment les activer.
Pour vérifier les profils disponibles installés dans le pare-feu UFW, exécutez cette commande :
$ sudo ufw app list
Une liste semblable à la suivante s'affichera à l'écran :
Available applications:
Dovecot IMAP
Dovecot POP3
Dovecot Secure IMAP
Dovecot Secure POP3
Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSH
Postfix
Postfix SMTPS
Postfix Submission
Pour autoriser le trafic de messagerie, activez les profils Dovecot.
Pour vérifier les informations de profil :
$ sudo ufw app info "Dovecot IMAP"
Après avoir vérifié les profils, vous êtes prêt à les activer :
$ sudo ufw allow "Dovecot POP3"
$ sudo ufw allow "Dovecot IMAP"
$ sudo ufw allow "Dovecot Secure IMAP"
$ sudo ufw allow "Dovecot Secure POP3"
Vérification du fonctionnement du serveur de messagerie
Pour vérifier le bon fonctionnement de votre serveur POP3, utilisez telnet. S'il n'est pas installé sur votre système, faites-le en exécutant cette commande :
$ sudo apt install telnet
Pour commencer à tester le serveur de messagerie, démarrez telnet :
$ sudo telnet localhost 110
Si tout fonctionne correctement, la sortie suivante doit s'afficher à l'écran :
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.
Entrez ensuite le nom d'utilisateur et le mot de passe à l'aide de la commande user and pass :
user john
pass test
Une fois la connexion terminée, le serveur enverra la sortie suivante :
+OK Logged in.
Pour essayer de recevoir un vrai message, utilisez la commande mail fournie par le paquet postfix (vous pouvez installer Postfix en suivant notre guide Comment configurer un serveur de messagerie SMTP avec Postfix sur Ubuntu 18.04) :
$
echo "TEST" | mail -s "TEST" [email protected]
Une fois l'e-mail envoyé, avec les commandes ci-dessus, utilisez à nouveau telnet comme ci-dessus pour accéder à la boîte aux lettres :
$ telnet localhost 110
Trying ::1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.
user john
+OK
pass test
+OK Logged in.
Une fois connecté, pour obtenir une liste des messages reçus, lancez la commande list :
list
+OK 1 messages:
1 533
.
Comme vous pouvez le voir, vous avez un message non lu :utilisez la commande RETR pour accéder au contenu :
retr 1
+OK 533 octets
Return-Path: <[email protected]>
To: [email protected]
Subject: Test
User-Agent: Heirloom mailx 12.5 7/5/10
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-Id: <[email protected]>
From: [email protected] (root).