将sSMTP更新到版本2.61后,我无法通过gmail发送邮件


10

我将sSMTP更新为版本2.61,现在尝试使用它时,出现以下错误:

ssmtp: Cannot open smtp.gmail.com:587

我可以通过telnet连接到他们的地址,但是sSMTP似乎被绊倒了,我不确定更新后发生了什么变化。

这里是 ssmtp.conf

root=XXXXX@gmail.com
mailhub=smtp.gmail.com:587
RewriteDomain=gmail.com
Hostname=localhost
UseTLS=YES
UseSTARTTLS=Yes
AuthUser=XXXXX
AuthPass=XXXXX
FromLineOverride=yes

通过telnet连接时的输出:

[root@soupcan sbin]# telnet smtp.gmail.com 587
Trying 74.125.142.108...
Connected to smtp.gmail.com.
Escape character is '^]'.
220 mx.google.com ESMTP l7sm7330049igx.2 - gsmtp
quit
221 2.0.0 closing connection l7sm7330049igx.2 - gsmtp
Connection closed by foreign host.

当我尝试使用时的输出 sSMTP

[root@soupcan sbin]# /usr/sbin/ssmtp -v XXXXX@gmail.com < /home/user/Documents/Scripts/msg.txt
[<-] 220 mx.google.com ESMTP f5sm7367852igc.4 - gsmtp
[->] EHLO localhost
[<-] 250 CHUNKING
[->] STARTTLS
[<-] 220 2.0.0 Ready to start TLS
ssmtp: Cannot open smtp.gmail.com:587

编辑 打开调试日志记录,现在我看到了,我仍然在挖掘:

SSL not working: certificate verify failed (20)

编辑2 已通过将以下内容添加到我的ssmtp.conf文件中来解决此问题

TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt

这里这里找到信息


这就是在Ubuntu 16.04和Raspbian上对我有效的方法。 unix.stackexchange.com/questions/363814/...
SDsolar

您需要使用以下命令: mailhub=smtp.gmail.com:465
SDsolar

Answers:


14

已通过将以下内容添加到我的ssmtp.conf文件中来解决此问题

TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt

这里这里找到信息


2

仅供参考-对于Ubuntu,.crt文件位于其他位置,应显示为:

TLS_CA-File=/etc/ssl/certs/ca-certificates.crt

添加此设置后,我可以使用设置通过端口587上的STARTTLS连接到我的SMTP服务器:

mailhub=smtp.{myserver}.com:587
AuthUser={username}    
AuthPass={password}
UseSTARTTLS=YES 
UseTLS=NO
TLS_CA_File=/etc/ssl/certs/ca-certificates.crt

我的邮件服务器配置为使用STARTTLS,而不使用SSL或TLS。

如果我设置UseTLS=YES,它将失败。它必须是排他性的UseSTARTTLS=YES,而不是两者兼有。我不知道其他邮件服务器是否可以同时做这两个事情,但是我的做不到。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.