发送失败:设置 nullmailer 时出现协议错误

发送失败:设置 nullmailer 时出现协议错误

我正在尝试设置 nullmailer (1.13) 以发送到 AWS SES,但失败了。以下是我的remotes文件内容:

email-smtp.us-east-1.amazonaws.com smtp --starttls --port=465 --user=AKIA.. --pass=..

这是中的错误/var/log/mail.err

Mar 16 01:26:05 server nullmailer[7663]: smtp: Failed:
Mar 16 01:26:05 server nullmailer[29064]: Sending failed:  Protocol error

我尝试过有和没有--starttls。我也尝试过--ssl 正如这个博客所推荐的那样

答案1

偶然发现了自己的问题并解决了。这里的测试 shell 脚本确实很有帮助,手动运行 nullmail-send 向我展示了这ubuntu@localhost是发件人地址,但被 SES 拒绝了。

http://www.troubleshooters.com/linux/nullmailer/

除了协议错误之外,我还遇到了配置失败,最终我发现这是权限问题。错误如下:

Dec 10 19:59:46 irc nullmailer[9011]: Could not load the config

因此,需要进行一些更改:

  • ubuntu 上的 nullmailer 以mail用户身份运行,因此它无法读取/etc/nullmailer/remotesroot 拥有的以及 root 的 mod 600。所以:chown mail:mail /etc/nullmailer/*
  • 通过在 中添加我的域,修复了ubuntu@localhost可能来自 cron/system 邮件的问题/etc/nullmailer/defaulthost
  • remotes还需要--ssl它与 SES 中的端口 465 进行通信。

相关内容