![是否可以禁用 postfix smtpd 服务器的 CRAM-MD5 身份验证?](https://linux22.com/image/520111/%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E7%A6%81%E7%94%A8%20postfix%20smtpd%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%20CRAM-MD5%20%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81%EF%BC%9F.png)
我的日志中出现此错误
warning: SASL authentication failure: no secret in database
因为客户端尝试使用 MD5 身份验证,而服务器需要一个 md5 加密密码数据库。仅使用 PLAIN 身份验证的客户端可以正常工作。(它仅通过 SSL 启用,所以我对此没意见)。我如何禁用 MD5 身份验证?
答案1
这有点像黑客行为,但我找到了禁用该垃圾的方法。 里面/usr/lib/sasl2/
有一堆与不同身份验证机制相关的库文件。它们被称为 之类的东西libdigestmd5.so
。如果您删除了与您不想要的机制相关的文件(只需将它们放在其他目录中),postfix 将不会提供这些机制。
答案2
正确的方法是使用配置文件。
如果您使用 Cyrus SASL,则配置您的 smtpd.conf 以仅使用您想要的机制。
mech_list: PLAIN LOGIN
如果您使用 dovecot,您可以在 dovecot.conf 文件中执行此操作。
auth default {
mechanisms = plain login
...
....
}