Problème serveur mail Dovecot après mise à jour de MySQL 5.7 à 8.0

Alors que mon serveur d’emails marchait nickel à part quelques réglages que j’ai dû faire par la suite pour empêcher les serveurs de spam d’utiliser mon serveur comme relais et expéditeur de leurs saletés, la mise à jour du serveur de base de données MySQL de la version 5.7 à la version 8.0 l’a totalement déréglé.

Logos Postfix Dovecot MySQL sur fond de vue aérienne et nocturne de Barcelone

Plus de courriers dans Thunderbird : Mail server murviel-info.com is not an IMAP4 server, Roundcube ne se connecte plus. En allant voir les fichiers de logs :

Donc, on y voit surtout unsupported dictionary type: mysql et dovecot: auth: Fatal: Unknown database driver 'mysql'. Il y a donc un problème avec Dovecot : le serveur IMAP et POP3 pour les systèmes d’exploitation Unix et donc Ubuntu, et le serveur de base données MySQL.

On regarde donc le statut du serveur Dovecot :

Il y a donc clairement un problème entre Dovecot et mysql, les mails étant gérés en base de données.

En se rendant dans le répertoire /etc/dovecot, on cherche d’où cela peut bien venir. On voit le mot driver, c’est ce que l’on va chercher dans les fichiers de configuration :

On commence à cerner le problème. Dovecot n’aime pas le driver mysql, déclaré dans le fichier de configuration dovecot-sql.conf.ext à la ligne 32.

Mon système étant Ubuntu 18.04 LTS Bionic, on voit sur le repository Bionic/Universe un package dovecot-mysql – MySQL support, donc un utilitaire pour le support de MySQL par Dovecot.

On regarde si celui-ci est installé sur le système :

On va donc se l’installer.

On arrête les serveurs mysql et dovecot pour plus de sécurité, et on lance l’installation avec apt-get :

On peut mettre à jour les repositories apt-get, et les packages :

Et on lance l’installation de dovecot-mysql :

On redémarre les serveurs mysql et dovecot :

Et maintenant Rouncube se connecte bien mais le serveur ne reçoit ni n’envoie rien. On redémarre postfix, et c’est pareil. Dans la même logique que précédemment, on va faire un tour sur les logs et l’on regarde si un package postfix-mysql n’existe pas. Et c’est la même chose : PostFix MySQL map support for Postfix.

On vérifie sur le système si le package est installé. Si non, on l’installe :

On redémarre postfix et l’on teste :

Et hop, c’est reparti, les mails s’envoient et se reçoivent.

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