为了减less垃圾邮件的可能性,我试图在我的Sendmail(Mint MATE 17.1 x64上的8.14.4)安装上设置SMTPAUTH。 用户可以使用IMAP或POP(使用Dovecot)从服务器检索邮件,但不能发送邮件。
首先,M4文件中的守护进程选项:
FEATURE(`no_default_msa')dnl dnl DAEMON_OPTIONS(`Family=inet6, Name=MTA-v6, Port=smtp, Addr=::1')dnl DAEMON_OPTIONS(`Name=MTALocal,Address=127.0.0.1,Family=inet') DAEMON_OPTIONS(`Name=MTA,Address=192.168.1.110,Family=inet') dnl DAEMON_OPTIONS(`Family=inet6, Name=MSP-v6, Port=submission, M=Ea, Addr=::1')dnl DAEMON_OPTIONS(`Name=MSA,Address=192.168.1.110,Family=inet,Port=587,Modifiers=E') DAEMON_OPTIONS(`Name=MSALocal,Address=127.0.0.1,Family=inet,Port=587,Modifiers=E')
因为我使用Thunderbird作为客户端,所以Sendmail必须有PLAIN或LOGIN可用。 Thunderbird设置为连接到服务器的端口587.(我知道192.168.xx是不可路由的。我的防火墙设置为转发端口587和25到192.168.1.110。我有防火墙外的静态可路由的IP 。)M4文件的authentication部分:
dnl # Forms of authentication allowed TRUST_AUTH_MECH(`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN') define(`confAUTH_MECHANISMS',`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')
意识到以纯文本格式推送证书的问题。 设置使用STARTTLS我有。 TLS协商成功,我已经确认TLS通过使用OpenSSL连接到我的邮件服务器并通过它发送命令。 当安装了Sendmail时,它还创build了可以提供SMTPvalidation的PAM安装。 (对于SMTP和Dovecot,都有PAM附件。)
当我提供有效的凭据到我的SMTP服务器,它响应
535 5.7.0 authentication failed
在PAM日志中没有任何结论性地表示Sendmail要求提供凭据。 邮件日志中的所有内容通常是“不提供SEND / ETRN而断开连接”。
我应该看什么? 任何想法如何解决这一问题?