我在 exim.cnf 中有以下配置
daemon_smtp_ports = 25:465
######################## Exim TLS
tls_advertise_hosts = *
tls_on_connect_ports = 465
tls_certificate=/opt/ssl/certs/server.crt
tls_privatekey=/opt/ssl/certs/server.key
如何拒绝 25 端口上的身份验证?目前,25 PLAIN 和 465 SSL 端口均允许进行身份验证。
答案1
常见的解决方案是仅向在未加密连接到端口 25 后选择 STARTTLS 的主机通告 AUTH:
auth_advertise_hosts = ${if eq{$tls_cipher}{}{}{*}}
执行 STARTTLS 命令并建立 TLS 连接后,$tls_cipher
当前会话的变量将变为非空。现在,客户端被告知允许 AUTH,因为会话由 TLS 保护,并且不会通过未加密的连接传递任何明文密码。
当然,你可以通过以下方式完全禁用 AUTH 广告
auth_advertise_hosts =
但这不是最好的选择。