La dernière version du serveur mail Dovecot nécessite quelques petits changements par rapport à la version antérieure.
Erreurs SASL
Voici ce que l’on peut lire dans les logs:
postfix/smtps/smtpd: warning: SASL: Connect to private/auth failed: Connection refused
postfix/smtps/smtpd: fatal: no SASL authentication mechanisms
postfix/master: warning: process /usr/lib/postfix/sbin/smtpd pid 635413 exit status 1
postfix/master: warning: /usr/lib/postfix/sbin/smtpd: bad command startup -- throttling
Code language: HTTP (http)
Solution: il faut éditer /etc/dovecot/conf.d/10-master.conf
:
nano /etc/dovecot/conf.d/10-master.conf
et ajouter ce bloc de directives à la fin du bloc service auth
:
service auth {
# ... Previous config blocks
# auth-master
unix_listener auth-master {
mode = 0660
user = vmail
group = vmail
}
}
Code language: PHP (php)
Stats writer
Dovecot inclut maintenant un module de statistiques et donne une erreur si jamais il n’est pas défini dans la configuration. Voici le message d’erreur:
Error: net_connect_unix(/var/run/dovecot/stats-writer) failed: Permission denied))
Code language: JavaScript (javascript)
Il faut donc le rajouter:
nano /etc/dovecot/conf.d/10-master.conf
et ajouter ce bloc à la toute fin du fichier:
# fix Error: net_connect_unix(/var/run/dovecot/stats-writer) failed: Permission denied))
service stats {
unix_listener stats-reader {
user = vmail
group = vmail
mode = 0660
}
unix_listener stats-writer {
user = vmail
group = vmail
mode = 0660
}
}
Code language: PHP (php)
Les paramètres SSL et Diffie-Hellman
La syntaxe de la directive Diffie-Hellman a changé. On crée maintenant un nouveau fichier dh.pem
avec cette commande:
dd if=/var/lib/dovecot/ssl-parameters.dat bs=1 skip=88 | openssl dhparam -inform der > /etc/dovecot/dh.pem
Code language: JavaScript (javascript)
On édite la configuration ssl de Dovecot:
nano /etc/dovecot/conf.d/10-ssl.conf
Voici ce que nous avions précédemment:
ssl_dh_parameters_length = 4096
et nous allons le remplacer par:
ssl_dh=</etc/dovecot/dh.pem
Code language: JavaScript (javascript)
Note: il y a bien le caractère <
après le signe =
, ce n’est pas une faute de frappe.
Pendant que vous éditez le fichier, pensez à mettre à jour la directive des protocoles SSL: ssl_protocols
devient ssl_min_protocol
(attention, cela devient singulier et non pluriel comme précédemment!):
#ssl_protocols = !SSLv3
ssl_min_protocol = !SSLv3
Code language: PHP (php)
Vérification de la configuration Dovecot
Vous pouvez vérifier la configuration Dovecot avec:
doveconf -n
Votre configuration s’affiche si tout va bien et vous donne les erreurs et comment les corriger dans le cas contraire.
Si tout va bien, il ne vous reste plus qu’à redémarrer les services:
service dovecot restart && service postfix restart
Et voilà, le serveur mail est de nouveau opérationnel.
Vous avez un projet WordPress ou WooCommerce en tête? Transformez votre vision en réalité avec mon expertise reconnue.
Re: Error: net_connect_unix(/var/run/dovecot/stats-writer) failed: Permission denied))
Don’t change the dovecot writer/reader permissions just to get this working. It will break with future config upgrades and widens dovecot’s socket permissions too far which could lead to increased security issues. If you want your web server user www-data (or whatever PHP/PHP-FPM is running as) to be able to make changes to dovecot, add the dovecot group to the www-data username.
usermod -a -G dovecot www-data
Thank you for the tip Michael!