我已将 Postfix 配置为使用 Gmail 发送邮件。我已经修改了文件/etc/postfix/main.cf
添加
myhostname = fqdn.peris.app
mydestination = $myhostname, peris.app, localhost, localhost.localdomain, localhost
relayhost = [smtp.gmail.com]:587
# Enable SASL authentication
smtp_sasl_auth_enable = yes
# Disallow methods that allow anonymous authentication
smtp_sasl_security_options = noanonymous
# Location of sasl_passwd
smtp_sasl_password_maps = hash:/etc/postfix/sasl/sasl_passwd
# Enable STARTTLS encryption
smtp_tls_security_level = encrypt
# Location of CA certificates
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
我还登录我的 Gmail 帐户,然后单击“管理您的帐户访问和安全设置”。向下滚动到“密码和登录方法”,然后单击两步验证,确保启用两步验证并生成我在文件中使用的密码
/etc/postfix/sasl/sasl_passwd
添加
[smtp.gmail.com]:587 [email protected]:xkltgnxoxzmocpce
然后我用以下方法测试它:
sendmail [email protected]
From: [email protected]
Subject: Test mail
This is a test email
.
我收到的是[email protected]
一封来自[email protected]
我认为应该直接从我的域收到的邮件,[email protected]
答案1
如果您收到来自 的测试电子邮件[email protected]
,这是一个好兆头:这意味着您已经正确配置了您的后缀!
您似乎对 Google 重写发件人地址感到不满。解释是,您的 Gmail 帐户只能从它知道属于您的地址发送电子邮件,以避免欺骗。
验证非 Google 电子邮件地址从而允许从您的 Gmail 帐户内从该地址发送电子邮件的选项怎么样?这些电子邮件确实将从您的 Gmail 帐户发送,但是不是来自 Google 服务器:事实上,当您从“设置”->“帐户”添加地址时,系统会要求您提供 SMTP 服务器详细信息。原因是,如果从 Google 的服务器发送这些邮件,最终可能会被标记为垃圾邮件。
您可以做的是将您的域添加到 Gsuite:这样您就可以使用 Google 的服务器发送和接收电子邮件。您将收到有关如何设置 SPF 记录的说明,并且这些电子邮件不太可能被视为垃圾邮件。请注意,Gsuite 有固定的每月成本,但包括许多您可能需要也可能不需要的附加服务。
我想推荐的另一个选择是使用 SMTP 中继服务,例如亚马逊SES,发送网格,邮件枪,邮件频道或者星火邮报。每个都有其特定的优点,您可以免费尝试大多数,有些还非常慷慨自由的津贴。