我已经配置了 postfix 来中继 gmail(谷歌应用程序),但电子邮件发送如下[电子邮件保护]代替[电子邮件保护]我已经配置好了。我认为配置没问题,因为我没有收到任何错误。问题是它试图以不存在的 root 身份发送!我怎样才能让电子邮件以 root 身份发送[电子邮件保护]正如我在 sasl_password 文件和数据库中所指定的那样?
对于所有配置/日志,我已删除我的域名并替换为 example.com。
邮件日志
Oct 1 13:40:57 mon1 postfix/qmgr[5449]: C01AD22880: from=<[email protected]>, size=450, nrcpt=1 (queue active)
Oct 1 13:40:57 mon1 postfix/local[5456]: C01AD22880: to=<admin@domain>, relay=local, delay=0.05, delays=0.03/0.01/0/0.01, dsn=2.0.0, status=sent (delivered to mailbox)
sasl 密码
[smtp.gmail.com]:587 [email protected]:MYPASSWORD
/etc/aliases(没有教程建议这样做,只是我尝试过的方法之一)
#PostFix
root: [email protected]
main.cf 中的新增内容
relayhost = [smtp.gmail.com]:587
# enable SASL authentication
smtp_sasl_auth_enable = yes
# disallow methods that allow anonymous authentication.
smtp_sasl_security_options = noanonymous
# where to find sasl_passwd
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
# Enable STARTTLS encryption
smtp_use_tls = yes
# where to find CA certificates
smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.trust.crt
答案1
你可以在 main.cf 中使用 sender_canonical_maps 来伪装外发邮件
sender_canonical_maps = hash:/etc/postfix/sender_canonical
echo "root admin@mydomain" >> /etc/postfix/sender_canonical
postmap /etc/postfix/sender_canonical
之后,重新加载你的 postfix 服务