Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
serveur_hebergement:serveur_mail:partie_2_dovecot [2022/10/27 14:08] – fate | serveur_hebergement:serveur_mail:partie_2_dovecot [2023/08/08 14:00] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== | + | ====== |
+ | Maintenant que nous avons notre serveur SMTP, Postfix, pour envoyer nos courriels, il nous faut un serveur IMAP/POP3 : Dovecot. | ||
- | ====== | + | ===== Installation |
- | + | ||
- | Expliquer ce qu'est Dovecot. | + | |
- | Installer | + | Pour installer |
<code bash> | <code bash> | ||
- | Ouvrez les ports 143 et 993. | + | Fin de l' |
- | Ouvrez fichier / | + | ===== Configuration ===== |
- | Ajoutez la ligne protocols = imap lmtp sieve. Si vous souhaitez également utiliser le protocole POP3, ajoutez également pop3. LMTP sert à envoyer des mails en local (à l' | + | Ouvrez fichier dovecot.conf avec la commande suivante : |
+ | <code bash> | ||
- | Ajoutez | + | Ajoutez |
+ | < | ||
+ | Cette ligne active IMAP, LMTP et Sieve. LMTP (Local Mail Transfer Protocol | ||
- | Ouvrez le fichier / | + | Ajoutez l' |
+ | <code bash> | ||
+ | |||
+ | Ouvrez le fichier | ||
+ | <code bash> | ||
Modifiez la ligne service lmtp afin d' | Modifiez la ligne service lmtp afin d' | ||
< | < | ||
+ | # Activer l' | ||
service lmtp { | service lmtp { | ||
unix_listener / | unix_listener / | ||
Ligne 27: | Ligne 34: | ||
group = postfix | group = postfix | ||
} | } | ||
- | |||
- | # Create inet listener only if you can't use the above UNIX socket | ||
- | # | ||
- | # Avoid making LMTP visible for the entire internet | ||
- | #address = | ||
- | #port = | ||
- | #} | ||
} | } | ||
</ | </ | ||
+ | Ces lignes servent à indiquer à Dovecot qu'il doit écouter les communications LMTP en provenance de Postfix, pour les transferts de courriels, en utilisant le fichier de socket / | ||
- | Ouvrez le fichier / | + | Modifiez les lignes |
- | + | ||
- | Ouvrez le fichier / | + | |
- | < | + | |
- | smtputf8_enable = no</ | + | |
- | + | ||
- | smtputf8 est une extension qui n'est pas supportée par dovecot-lmtp | + | |
- | + | ||
- | Ouvrez le fichier / | + | |
- | Désactivez l' | + | |
- | Décommentez la ligne suivant < | + | |
- | Décommentez la ligne suivante pour que Dovecot puisse interroger la base SQL < | + | |
- | Commentez la ligne suivante afin que les utilisateurs locaux, root par exemple, ne puisse pas envoyer de mail < | + | |
- | Vous pouvez également ajouter les lignes suivantes afin d' | + | |
- | < | + | |
- | auth_debug_passwords = yes</ | + | |
- | + | ||
- | Ouvrez le fichier / | + | |
- | < | + | |
- | driver = mysql | + | |
- | + | ||
- | connect = host=localhost dbname=postfixadmin user=postfixadmin password=motdepassesqlpostfixadmin | + | |
- | + | ||
- | default_pass_scheme = ARGON2I | + | |
- | + | ||
- | password_query = SELECT username AS user, | + | |
- | + | ||
- | user_query = SELECT maildir, 2000 AS uid, 2000 AS gid FROM mailbox WHERE username = ' | + | |
- | + | ||
- | iterate_query = SELECT username AS user FROM mailbox | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | Ouvrez maintenant le fichier / | + | |
- | Modifiez les lignes service auth { et suivante afin d' | + | |
< | < | ||
+ | # Authentification des utilisateurs pour les connexions SMTP | ||
service auth { | service auth { | ||
- | # auth_socket_path points to this userdb socket by default. It's typically | ||
- | # used by dovecot-lda, | ||
- | # full permissions to this socket are able to get a list of all usernames and | ||
- | # get the results of everyone' | ||
- | # | ||
- | # The default 0666 mode allows anyone to connect to the socket, but the | ||
- | # userdb lookups will succeed only if the userdb returns an " | ||
- | # matches the caller process' | ||
- | # socket' | ||
- | # | ||
- | # To give the caller full permissions to lookup all users, set the mode to | ||
- | # something else than 0666 and Dovecot lets the kernel enforce the | ||
- | # permissions (e.g. 0777 allows everyone full permissions). | ||
unix_listener / | unix_listener / | ||
mode = 0660 | mode = 0660 | ||
Ligne 92: | Ligne 47: | ||
group = postfix | group = postfix | ||
} | } | ||
- | |||
- | # Postfix smtp-auth | ||
- | # | ||
- | # mode = 0666 | ||
- | #} | ||
- | |||
- | # Auth process is run as this user. | ||
- | #user = $default_internal_user | ||
} | } | ||
</ | </ | ||
+ | Ces lignes servent à indiquer à Dovecot qu'il doit communiquer avec Postfix en utilisant le fichier de socket / | ||
Ajoutez également les lignes suivantes qui vont activer les statistiques de Dovecot, utilisées par Postfixadmin : | Ajoutez également les lignes suivantes qui vont activer les statistiques de Dovecot, utilisées par Postfixadmin : | ||
Ligne 120: | Ligne 68: | ||
</ | </ | ||
- | Ouvrez le fichier / | + | Ouvrez le fichier / |
- | Modifiez les lignes ssl_cert et ssl_key pour avoir comme suit (remplacez mondomaine.fr par votre domaine) : | + | < |
- | < | + | afin d' |
- | ssl_key = </etc/letsencrypt/live/mondomaine.fr/privkey.pem | + | <code> |
+ | mail_location = maildir:~/Maildir | ||
+ | mail_home = /var/vmail/%d/%n/ | ||
+ | </ | ||
+ | Les courriels seront stockés dans le répertoire /var/vmail au lieu de /var/mail (nécessaire pour postfixadmin) | ||
- | Trouvez la ligne # | + | Ouvrez le fichier / |
- | Trouvez la ligne # | + | < |
+ | smtputf8_enable | ||
- | Redémarrez | + | On utilise |
+ | smtputf8 est une extension qui n'est pas supportée par dovecot-lmtp | ||
- | Concernant les fichiers SSL let's encrypt, il faut que les utilisateurs postfix, dovecot et www-data aient accès à /etc/letsencrypt/live/ | + | Ouvrez le fichier 10-auth.conf afin de configurer l'authentification : |
+ | <code bash> | ||
- | Pour Sieve | + | Désactivez l' |
+ | < | ||
+ | L' | ||
- | < | + | Décommentez la ligne suivante : |
+ | < | ||
+ | L' | ||
+ | |||
+ | Décommentez la ligne suivante pour que Dovecot puisse interroger la base SQL pour récupérer les noms des utilisateurs authentifiés : | ||
+ | < | ||
- | A la fin du fichier, décommenter | + | Commentez |
+ | < | ||
+ | Vous pouvez également ajouter les lignes suivantes afin d' | ||
+ | < | ||
+ | auth_debug_passwords = yes</ | ||
+ | |||
+ | |||
+ | Ouvrez le fichier 10-ssl.conf pour configurer la partie TLS : | ||
+ | <code bash> | ||
+ | |||
+ | Modifiez les lignes ssl_cert et ssl_key pour avoir comme suit (remplacez domaine.fr par votre domaine) : | ||
+ | < | ||
+ | ssl_cert = </ | ||
+ | ssl_key = </ | ||
+ | </ | ||
+ | |||
+ | Trouvez la ligne | ||
+ | < | ||
+ | Afin de laisser le serveur décider des algorithmes de chiffrement à utiliser plutôt que le client, remplacez-la par | ||
+ | < | ||
+ | |||
+ | Trouvez la ligne | ||
+ | < | ||
+ | Afin de n' | ||
+ | < | ||
+ | |||
+ | Concernant les fichiers SSL let's encrypt, il faut que les utilisateurs postfix, dovecot et www-data aient accès à / | ||
+ | |||
+ | On va activer Sieve afin de pouvoir créer des filtres automatiques. | ||
+ | Ouvrez le fichier 15-lda.conf : | ||
+ | <code bash> | ||
+ | À la fin du fichier, décommenter la ligne mail_plugins et ajouter sieve : | ||
<code bash> | <code bash> | ||
# Space separated list of plugins to load (default is global mail_plugins). | # Space separated list of plugins to load (default is global mail_plugins). | ||
Ligne 143: | Ligne 136: | ||
}</ | }</ | ||
- | <code bash> | ||
+ | Ouvrez le fichier 20-lmtp.conf : | ||
+ | <code bash> | ||
+ | À la fin du fichier, décommenter la ligne mail_plugins et ajouter sieve : | ||
<code bash> | <code bash> | ||
# Space separated list of plugins to load (default is global mail_plugins). | # Space separated list of plugins to load (default is global mail_plugins). | ||
Ligne 151: | Ligne 146: | ||
+ | Pensez à ouvrir le port 993 pour pouvoir vous connecter à Dovecot depuis un client via le protocole IMAP. Si vous souhaitez utiliser le protocole POP, c'est le port 995 qu'il vous faudra ouvrir. | ||
+ | Maintenant que Postfix et Dovecot sont installés, on passe à [[serveur_hebergement: | ||
Source : https:// | Source : https:// |