Dovecot : solution pour les erreurs SASL, stats-writer, SSL et Diffie-Hellman

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 -- throttlingCode 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.pemCode 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.pemCode 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 = !SSLv3Code 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.

Envie d'ajouter des fonctionnalités exceptionnelles à votre site WordPress ou WooCommerce? Je suis là pour vous aider.

Explorons les possibilités ensemble »

Articles conseillés :

Matt

Matt Biscay est développeur WordPress et WooCommerce certifié chez Codeable, ainsi que sysadmin qualifié et enseignant-chercheur. Passionné par le code performant et les solutions sécurisées, je m'efforce d'offrir une expérience utilisateur exceptionnelle sur chaque projet.

Vous avez aimé cet article ? Vous avez un projet en tête et vous pensez que je pourrais vous aider à le concrétiser ? N'hésitez pas à me contacter, je serais ravi de discuter avec vous de votre projet !

2 pensées sur “Dovecot : solution pour les erreurs SASL, stats-writer, SSL et Diffie-Hellman”

  1. 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

    Reply

Opinions