使用 ssmtp 发送邮件时遇到一些问题

使用 ssmtp 发送邮件时遇到一些问题

实际上,我使用的是 RaspberryPI 3b。
这是我的/etc/ssmtp/ssmtp.conf

[email protected]
mailhub=smtp.gmail.com:587
rewriteDomain=gmail.com
hostname=raspi
FromLineOverride=YES
UseTLS=Yes
UseSTARTTLS=YES
AuthUser=gmail_user
AuthPass=PASSWD

这是我的/etc/ssmtp/revaliases

root:[email protected]:smtp.gmail.com:587
pi:[email protected]:smtp.gmail.com:587

尝试发送邮件:

root@raspberrypi:~# echo "hola" | ssmtp [email protected] -v
[<-] 220 smtp.gmail.com ESMTP x129sm89284054wmg.44 - gsmtp
[->] EHLO raspi
[<-] 250 SMTPUTF8
[->] STARTTLS
[<-] 220 2.0.0 Ready to start TLS
[->] EHLO raspi
[<-]
ssmtp:  (raspi)

hostname

root@raspberrypi:~# hostname
raspberrypi

这是ping我正在使用的 Google 和 DNS 服务器:

root@raspberrypi:~# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=54 time=13.1 ms
^C
--- 8.8.8.8 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 13.134/13.134/13.134/0.000 ms
root@raspberrypi:~# cat /etc/resolv.conf
# Generated by resolvconf
nameserver 8.8.8.8
nameserver 8.8.4.4

还...

  • GMail 帐户有让不太安全的应用程序使用该帐户的功能。
  • 为了确保名称和密码正确,使用复制/粘贴到谷歌 Chrome(使用 SSH,以便我可以复制/粘贴内容)
  • 我有一个运行良好的 Debian 服务器,也尝试复制/粘贴所有配置并更改用户和主机名的名称,但没有成功。

答案1

从 18.04 更新到 18.10 后,我遇到了同样的问题(在 PC-x64 上)。由于其他一些不相关的东西坏了,我更新到了 19.04,甚至零安装 19.10(目前是测试版)。现在其他一切都正常,但 SSMTP 仍然坏了。它可能需要一个未列出的依赖 SSL/TLS 库或类似的东西。

遗憾的是,SSMTP 无人维护,我的搜索也无济于事。阅读完这个问题和评论,我也放弃了,并安装了邮件传输协议,它应该是积极维护的,基本上遵循该链接的说明:

安装(我假设你在 pi 上使用与 debian 相关的发行版):

apt install msmtp msmtp-mta ca-certificates

编辑/etc/msmtprc并输入最小配置:

account default
auth on
tls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
logfile /var/log/mail.log
host     smtp.gmail.com
port     587
from     [email protected]
user     [email protected]
password plain-text-password

在 Ubuntu 19.10 beta 上,我看到软件包安装程序添加了用户/组“msmtp”,并创建了二进制 SGUID,因此,为了配置和日志文件权限的安全性和一致性,我在其他系统上也做了同样的事情:

adduser --system --home /var/lib/msmtp --no-create-home --group msmtp
chown root:msmtp /etc/msmtprc
chmod 640 /etc/msmtprc
chown syslog:msmtp /var/log/mail.log
chmod 660 /var/log/mail.log

尝试一下,它具有比 SSMTP 更多的功能(例如多个帐户和用户特定~/.msmtprc配置),但配置仍然很简单。

相关内容