Ubuntu 24.04 LTS下Postfix SMTP中继SASL基本认证失败问题排查求助
Ubuntu 24.04 LTS下Postfix SMTP中继SASL基本认证失败问题排查求助
大家好,我在Ubuntu 24.04 LTS环境部署支持客户端基本认证的SMTP中继时,碰到了SASL认证的棘手问题,折腾了好一阵都没搞定,想求助各位大佬帮忙排查下!
目前的核心问题是:明明客户端输入的用户名和密码是正确的,却一直收到SASL认证失败的报错:
SASL LOGIN authentication failed: authentication failure, sasl_username=relay@ub1
已确认用户存在
我先验证了目标用户确实存在,执行sudo sasldblistusers2的输出如下:
prx@ub1:~$ sudo sasldblistusers2 relay@ub1: userPassword
testsaslauthd测试结果异常
我用testsaslauthd工具测试了两种不同的用户名格式,结果完全相反:
- 使用完整邮箱格式(
relay@ub1)测试时,认证直接失败:
prx@ub1:~$ sudo testsaslauthd -u relay@ub1 -p pwd 0: NO "authentication failed"
- 只使用用户名部分(
relay)测试时,认证却成功了:
prx@ub1:~$ sudo testsaslauthd -u relay -p pwd 0: OK "Success."
我的Postfix main.cf配置片段
以下是我当前main.cf的部分配置内容:
# See /usr/share/postfix/main.cf.dist for a commented, more complete version #myorigin = /etc/mailname smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) biff = no # appending .domain is the MUA's job. append_dot_mydomain = no # Uncomment the next line to generate "delayed mail"...
有没有大佬能帮我分析下,为什么用完整邮箱格式的用户名会认证失败?应该怎么调整配置,才能让客户端用relay@ub1这样的用户名正常完成认证呢?
备注:内容来源于stack exchange,提问作者Andrea Gail




