![如何配置 nullmailer 以与 gmx 配合使用](https://linux22.com/image/1135371/%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%20nullmailer%20%E4%BB%A5%E4%B8%8E%20gmx%20%E9%85%8D%E5%90%88%E4%BD%BF%E7%94%A8.png)
上次我使用了 postfix,一切都很混乱,直到配置好所有内容以将我的根邮件发送到我的 gmx 地址... 但最终它成功了。
这次我想通过使用nullmailer
.. 来避免这种混乱,但是nullmailer
也带来了一些麻烦。
这是我的设置:
sudo less /etc/nullmailer/adminaddr
[email protected]
/etc/nullmailer/defaultdomain
是空的
sudo less /etc/nullmailer/remotes
mail.gmx.net smtp --port=465 --starttls [email protected] --pass=someSecret
我也配置了 /etc/aliases ...不知道这是否重要:
....
root: [email protected]
配置并重启服务后:
sudo service nullmailer restart
我尝试发送一封测试邮件:
mail -s "whatever" root < /dev/null
但它失败了...我可以在/var/log/mail.err 中读取以下错误:
Apr 20 22:20:58 desktop-pc nullmailer[4727]: smtp: Failed:
Apr 20 22:20:58 desktop-pc nullmailer[4717]: Sending failed: Protocol error
那么现在该如何调试呢?或者我应该选择另一个邮件提供商来发送我的根邮件?
编辑1:
使用带有 TLS 的端口 587 会导致另一个错误:( 使用带有 --ssl 的端口 465 时也会出现同样的错误)
Apr 21 08:12:43 schwinn-desktop nullmailer[1319]: smtp: Failed: 550-Requested action not taken: mailbox unavailable#012550 Sender address is not allowed.
Apr 21 08:12:43 schwinn-desktop nullmailer[1285]: Sending failed: Permanent error in sending the message
编辑2:
最后,感谢 emk2203,我使用 dma(dragonfly 邮件传输代理)代替 nullmailer,这样我就能够在不到 5 分钟的时间内开始工作。
答案1
按照 GMX 记录的方式,您必须使用带有 SSL 的端口 465 - 您将其与 TLS 一起使用,而 TLS 应该使用端口 587。因此,要么更改您的端口,要么更改您的协议,两者都应该可以工作。
此外,作为一项反垃圾邮件措施,GMX仅有的接受来自有效 GMX 发送者的消息 - 没有类似[email protected]
或相似的东西。
如果您通过 发送邮件,则有效。nullmailer-inject -f [email protected]
我刚刚用 成功测试了我的旧 GMX 帐户。您需要使用 选项强制使用包含您真实地址的信封,否则将被拒绝。-h 选项只是为了仅使用电子邮件文件中的信息,而不使用 to: 和其他字段的命令行信息。cat testmail.mail | nullmailer-inject -h -f [email protected]
-f [email protected]
我的测试邮件格式如下。摘自空邮件疑难解答,填写发件人:、收件人:和抄送:字段,否则它将不起作用!
Subject: Nullmailer test at Do 21. Apr 13:56:57 CEST 2016
From: Yourfirst Yourlast <[email protected]>
To: Yourfirst Yourlast <[email protected]>
Cc: Friendfirst Friendlast <[email protected]>
Sent at Do 21. Apr 13:56:57 CEST 2016
Yourfirst Yourlast was here
and now is gone
but left his name
to carry on.
This is a second paragraph thats kinda long, really really long, so long that I truly hope that it does the right thing and wraps.
Sincerely
Yourfirst Yourlast
我的/etc/nullmailer/remotes
文件如下所示:
mail.gmx.net smtp --port=587 --starttls --auth-login [email protected] --pass=password
如果您想像mail
以前一样使用,请确保使用该选项。如何执行此操作取决于别名背后的 MUA(邮件用户代理)。-f [email protected]
mail
最后,我想指出的是,nullmailer 存在固有的安全漏洞。尽管该/etc/nullmailer/remotes
文件只有 root 和用户 mail 可读,但它会以smtp
该文件的内容作为选项来调用该程序,因此smtp 运行时,系统上的每个用户都可以看到你的凭据通过ps aux
或htop
。也许这个问题在 2.0 中已经修复,但即使 16.04 也只有 1.x 版本,并且没有 ppa 提供更新的版本。
一个不错的选择nullmailer
是dma
d蜻蜓米交通转运A先生。我可以在不到一分钟的时间内将其设置为使用我的 GMX 凭据。如果您使用[email protected]
设置文件中的选项,您甚至不需要费力传递选项mail
。
只需将以下内容输入到 中/etc/dma/dma.conf
,将您的凭据输入到 中/etc/dma/auth.conf
,即可完成:
SMARTHOST smtp.gmx.net
PORT 587
AUTHPATH /etc/dma/auth.conf
SECURETRANSFER
STARTTLS
MASQUERADE [email protected]
无需进一步配置或调整,简单且安全。