Ich habe versucht, die richtigen Einstellungen zu finden, damit Postfix eine Verbindung zu MySQL herstellen kann, wenn SSL erforderlich ist. Bisher habe ich die folgende Konfiguration, die nicht funktioniert:
user = mysqluser
password = XXX
hosts = secure-mysql-db.example.com
dbname = mail
query = SELECT 1 FROM users WHERE email='%s'
tls_CAfile = /path/to/mysql-ca.crt
Bei Verwendung dieser Konfiguration erhalte ich die folgende Fehlermeldung
postfix/cleanup[1317842]: Warnung: Verbindung zum MySQL-Server secure-mysql-db.example.com herstellen: SSL-Verbindungsfehler: Keine solche Datei oder kein solches Verzeichnis
Ich habe tatsächlich bestätigt, dass auf die Datei zugegriffen werden kann. Die Verbindung mit denselben Anmeldeinformationen über die Befehlszeile funktioniert wie erwartet.
Vielen Dank im Voraus für jede Hilfe!
Aktualisieren
Nach ÜberprüfungPostfix zwingen, TLS für MySQL-Verbindung zu verwenden?habe ich Folgendes hinzugefügt:
user = mysqluser
password = XXX
hosts = secure-mysql-db.example.com
dbname = mail
query = SELECT 1 FROM users WHERE email='%s'
tls_ciphers = TLSv1.3
tls_CAfile = /path/to/mysql-ca.crt
Jetzt erhalte ich die folgende Fehlermeldung:
SSL-Verbindungsfehler: Keine Verschlüsselungsübereinstimmung
Ich habe tatsächlich bestätigt, dass die Verbindung zur Datenbank funktioniert:
mysql -h secure-mysql-db.example.com -p -u postfix mail
MySQL [mail]> \s
--------------
mysql Ver 15.1 Distrib 10.5.15-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper
Connection id: 487933
Current database: mail
Current user: [email protected]
SSL: Cipher in use is ECDHE-RSA-AES256-GCM-SHA384
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server: MySQL
Server version: 8.0.26 MySQL Community Server - GPL
Protocol version: 10
Connection: secure-mysql-db.example.com via TCP/IP
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8mb3
Conn. characterset: utf8mb3
TCP port: 3306
Uptime: 17 days 7 hours 25 min 45 sec
Ich verwende Postfix 3.5.13 unter Debian 11.5