我在私人家庭办公网络内建立网站。
本地托管网站是我为客户构建的网站的开发版本。我希望我构建的网站能够发送电子邮件。并且我想在我的办公室网络内通过网站的本地开发版本测试电子邮件功能。
我的开发服务器正在运行 Ubuntu 22.04
我正在将 postfix 配置为仅发送服务器。我想使用 gmails smtp 服务作为中继。
这是我目前所做的:
在我的 Google 管理员中,我启用了安全性较低的应用程序。(我知道他们正在逐步淘汰某些用户的这项功能,但我是 Google Workspace 用户,我相信“安全性较低的应用程序”将继续为我们服务。如果我错了,请告诉我。)
我已将我的凭证按照以下格式放入 /etc/sasl_password 中:
[smtp.gmail.com]:587 myemailaddress@mydomain:mypassword
- 我已编辑 /etc/postfix/main.conf 以包含以下行:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
我使用“postmap”命令将密码文件添加到postmap的数据库:
postmap /etc/postfix/sasl_passwd
当我运行“postfix check”时,没有返回。没有显示任何错误或警告(或其他任何内容)。
我已经重启了 postfix 服务器
重新启动后,我从我的一个开发站点发送了一封测试邮件。
邮件日志告诉我,由于身份验证失败,邮件已被拒绝。相关行是:
status=deferred (SASL authentication failed; cannot authenticate to server smtp.gmail.com[142.251.10.109]: invalid parameter supplied)
我错过了什么?
答案1
Google 团队禁用了安全性较低的应用程序选项。我的服务器也停止发送电子邮件。这是使用公共电子邮件提供商时出现的问题,他们一直在更改政策。简单的解决方案是搜索其他电子邮件提供商,请查看下面的文章。