SSL을 사용하여 MySQL에 Postfix 연결하기

SSL을 사용하여 MySQL에 Postfix 연결하기

나는 SSL이 필요한 mysql에 postfix를 연결할 수 있도록 올바른 설정 방법을 얻으려고 노력해 왔습니다. 지금까지 작동하지 않는 다음 구성이 있습니다.

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

이 구성을 사용할 때 다음 오류가 발생합니다.

postfix/cleanup[1317842]: 경고: mysql 서버에 연결 secure-mysql-db.example.com: SSL 연결 오류: 해당 파일 또는 디렉터리가 없습니다.

실제로 파일에 액세스할 수 있음을 확인했습니다. 명령줄을 통해 동일한 자격 증명을 사용하여 연결하면 예상대로 작동합니다.

어떤 도움이라도 미리 감사드립니다!

업데이트

검토 후Postfix가 MySQL 연결에 TLS를 사용하도록 강제하시겠습니까?, 다음을 추가했습니다.

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

이제 다음과 같은 오류가 발생합니다.

SSL 연결 오류: 암호가 일치하지 않습니다.

실제로 데이터베이스에 연결이 작동하는지 확인했습니다.

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

Debian 11.5에서 Postfix 3.5.13을 실행하고 있습니다.

관련 정보