我正在使用this online guide here启用 从linux(ubuntu)终端发送的简单邮件 通过一些Gmail帐户使用postfix。 我已经完成了那里列出的步骤:
sudo apt-get install postfix mailutils libsasl2-2 ca-certificates libsasl2-modules
vim /etc/postfix/main.cf
并添加以下行:
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes
然后编辑此文件:
vim /etc/postfix/sasl_passwd
添加指南中所说的行:
[smtp.gmail.com]:587 USERNAME@gmail.com:PASSWORD
(当然用我自己的邮件和密码)最后:
sudo chmod 400 /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd
然后:
sudo /etc/init.d/postfix reload
当我尝试发送简单邮件时,没有任何事情发生:
echo "Test mail from postfix" | mail -s "Test Postfix" you@example.com
(当然这里还有一些其他有效的电子邮件)
我做错了什么?谢谢!
答案 0 :(得分:4)
我认为您需要验证证书以避免遇到错误。
尝试:
cat /etc/ssl/certs/Thawte_Premium_Server_CA.pem | sudo tee -a /etc/postfix/cacert.pem
如果您遇到上述命令的问题,请尝试将证书重命名为:
上面命令中的thawte_Primary_Root_CA.pem
。
现在,重新加载服务器
sudo /etc/init.d/postfix reload
答案 1 :(得分:2)
问题可能与应用程序密码有关。例如,我无法使用当前密码在旧客户端上使用我的Gmail。您可能想要创建“Application Password”。
或启用less secure apps可以提供帮助。 (很可能这是解决方案)
用于管理应用程序密码: https://myaccount.google.com/apppasswords
额外信息:Use Gmail as your SMTP Server – even when using 2-factor authentication (2-step verification)