Я нахожусь в процессе настройки постфиксного сервера в Arch Linux. Кажется, что пока все работает нормально - я могу успешно поговорить с ним через telnet localhost 25
. Тем не менее, когда я пытаюсь подключиться с помощью openssl s_client
, он жалуется:
$ openssl s_client -connect localhost:25
CONNECTED(00000003)
140243743024808:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:766:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 228 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
---
и выходит со статусом 1.
Соответствующая часть /etc/postfix/main.cf
:
smtpd_tls_key_file = /path/to/server.key.pem
smtpd_tls_cert_file = /path/to/server.crt.pem
smtpd_tls_CAfile = /path/to/ca.pem
smtpd_tls_security_level = may
У меня также есть ключ и сертификат в не-pem форматах, и они отлично работают с другим сервисом, который их использует (сервер xmpp).
Я нашел документацию о том, что для этого мне нужно раскомментировать строку в /etc/postfix/main.cf
и использовать порт 587 вместо 25. Это дает мне то же самое из openssl s_client
как и выше.
Как мне убедить postfix использовать TLS?