msmtp 1.8.3
我正在尝试使用debian将所有系统电子邮件转发到我的 gmail 地址/etc/aliases
。它有效,但我从 Gmail 收到错误。
当我发送电子邮件root
(通过echo "hello world" | mail -s "forward me" root
)时,我在 gmail 地址的收件箱中收到 2 封电子邮件:
- 预期转发的电子邮件
- 以下消息来自
[email protected]
Address not found
Your message wasn't delivered to root@backupbox because the domain backupbox couldn't be found. Check for typos or unnecessary spaces and try again.
The response was:
DNS Error: 5452395 DNS type 'mx' lookup of backupbox responded with code NXDOMAIN Domain name not found: backupbox
显然,gmail 无法到达并不奇怪root@backupbox
,因为从他们的角度来看,backupbox
这不是一个完全合格的域名。然而我很惊讶,因为我将所有系统地址别名为我的 Gmail 地址。
这是我的 msmtp 配置:
# /etc/msmtprc
defaults
port 587
tls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
account gmail
host smtp.gmail.com
from [email protected]
auth on
user me
password xxxxxxxxxxxxxxxx
account default : gmail
aliases /etc/aliases
这是我的系统别名
# /etc/aliases
default: [email protected]
如何确保只有第一封电子邮件到达我?例如,可以msmtp
重写root@backupbox
为[email protected]
?
答案1
是的,msmtp
可以像这样重写地址。我的机器上有类似的设置
echo 'a test email' | msmtp root
按预期工作。
也许问题出在+
符号上。也许需要以某种方式来逃避。我建议在没有+
测试的情况下尝试一下。虽然显然你的问题是 2019 年的,但你现在可能已经找到了另一种方法!