我正在尽力使用端口 25 配置 Postfix 和 STARTTLS。现在的问题是 STARTTLS 无法在端口 25 上运行。
250-VRFY
250-ETRN
250-XXXXXXXA
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
AUTH LOGIN
334 xxxxxxxxxx
334 xxxxxxxxxxxxx
235 2.7.0 Authentication successful
RSET
250 2.0.0 Ok
MAIL FROM: <[email protected]>
250 2.1.0 Ok
RCPT TO: <[email protected]>
当使用端口 587 时,有一个 STARTTLS 功能,但我没有看到“220 2.0.0 准备启动 TLS”。
STARTTLS 应在身份验证之前启动。如果设备/客户端不支持 STARTTLS,则身份验证应被自动拒绝。
端口 25 应该是这样的。
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
220 2.0.0 Ready to start TLS
250-AUTH PLAIN LOGIN
AUTH PLAIN am9obkBleGFtcGxlLm9yZwBqb2huQGV4YW1wbGUub3JnAHN1bW1lcnN1bg==
请指教错误在哪里?我是否遗漏了什么?
可以使用端口 25 的 STARTTLS 吗?
主配置文件
smtp_tls_security_level = may
smtpd_use_tls = yes
smtpd_tls_key_file = /etc/postfix/certs/key.key
smtpd_tls_cert_file = /etc/postfix/certs/crt.crt
smtpd_tls_CAfile = /etc/postfix/certs/mcabundle.ca-bundle
smtp_tls_key_file = /etc/postfix/certs/key.key
smtp_tls_cert_file = /etc/postfix/certs/crt.crt
smtp_tls_CAfile = /etc/postfix/certs/ca-bundle
tls_random_source = dev:/dev/urandom
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = smtpd
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = cyrus
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
smtpd_delay_reject = yes
smtpd_client_restrictions = permit_sasl_authenticated, reject
主配置文件
smtp inet n - n - - smtpd
#smtp inet n - n - 1 postscreen
#smtpd pass - - n - - smtpd
#dnsblog unix - - n - 0 dnsblog
#tlsproxy unix - - n - 0 tlsproxy
#submission inet n - n - - smtpd
# -o syslog_name=postfix/submission
# -o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
答案1
要在端口 25 上获取 TLS,请smtpd_tls_security_level = may
放入main.cf
。
您还应该放入smtpd_tls_auth_only = yes
,main.cf
这样如果不先加密连接就无法进行身份验证。
此外,我建议您调整master.cf
为:
smtp inet n - n - - smtpd
#smtp inet n - n - 1 postscreen
#smtpd pass - - n - - smtpd
#dnsblog unix - - n - 0 dnsblog
#tlsproxy unix - - n - 0 tlsproxy
submission inet n - n - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
更改后,提交端口 (587/tcp) 将处于活动状态并需要加密。在日志中也更容易区分。