问题描述: SendMail安装成功并已启动,利用foxmail可以收发Mail, 只是当选中“SMTP服务器需要身份验证”是,发送mail总是验证失败, 使用
telnet登陆smtp服务器,输入ehlo ip返回信息如下:
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN
250-DELIVERBY
250 HELP
从返回信息上可以SMTP服务器是可以通过DIGEST-MD5,CRAM-MD5,LOGIN PLAIN这几种方式验证的,在foxmail的帮助文档中也可以找到它
是支持这些验证方式的,但是我输入:
auth login/r/n
334 VXNlcm5hbWU6 //响应正确的
Y2FydmVu //编码过的用户名
334 UGFzc3dvcmQ6 //返回也没问题
Y2FydmVuMTIz //编码过的蜜码
535 5.7.0 authentication failed //这里就出问题了
用这密码登陆自己的SMTP服务器是没问题的啊,終于在网上看到一篇讲sendmail认证的文章
(http://www.wangchao.net.cn/bbsdetail_1417288.html),对sendmail作了如下改动:
修改/etc/mail/sendmail.mc文件:
第42行和43行,把最前面的dnl删除,变成:
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
第84 行DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl把里面的127.0.0.1改成0.0.0.0,
把mc文件编译成sendmail的配置,运行m4 sendmail.mc > sendmail.cf;
/etc/init.d/sendmail restart(重新启动sendmail)
然后用telnet试了下,发现还是同样的问题.
难道还有什么没配置好?
再仔细看看这篇文,上面还说到了需要smtpd.conf和启动/etc/init.d/saslauthd, 第一次看也没注意到这两个问题,反正还没弄好,也
就试试吧,用ls /usr/lib/sasl2发现Sendmail.conf和smtpd.conf都存在,且内容也是pwcheck_method:saslauthd.
不会是saslauthd服务没有启动吧?
chkconfig --list | grep "saslauthd"
saslauthd服务还真没有启动,由于sendmail不是我配置的,本人对于sendmail也不熟,也不知道需要些什么服务,只有照着网上说的做
了。
telnet测试如下:
auth login
334 VXNlcm5hbWU6
Y2FydmVu
334 UGFzc3dvcmQ6
Y2FydmVuMTIz
235 2.0.0 OK Authenticated
用foxmail发送也不再有问题了, saslauthd服务没有开启,害得我弄了老半天!!!
Sendmail提示身份验证失败问题解决
最新推荐文章于 2021-08-10 14:20:03 发布