Postfix:所有外部邮件都回发给我自己

Postfix:所有外部邮件都回发给我自己

我的问题是,我无法使用 Postfix 3.4.13 向任何外部域发送电子邮件。但是,我可以接收从外部域发送的电子邮件,例如 gmail 或 hotmail。我的场景有点不寻常,所以我会尽力解释一下:

我使用一些 docker 容器托管我自己的个人邮件服务器,然后我切换到另一个 ISP,现在我处于双 NAT 之后,所以我无法转发端口。为了解决这个问题,我使用我在 Digital Ocean 拥有的低端 VPS 设置了一个 VPN,我使用这个 VPS 进行转发(以及其他操作)。到目前为止,我成功地转发了 SSH 和 Web 服务的端口,因此,除非 MX 记录(指向我的 VPS 的公共地址)搞砸了一切,否则我找不到任何无法向外部域发送电子邮件的合理解释,因为这个配置以前有效过,如果我不在执行 DNAT(转发 SMTP 端口)的机器后面,它也可以工作。你可以看看我的配置文件这里,以及使用docker自己测试一下。

Postfix 的日志显示:

Jan  1 23:38:33 my-server postfix/smtp[214]: warning: host gmail-smtp-in.l.google.com[74.125.140.27]:25 greeted me with my own hostname smtp.example.com
Jan  1 23:38:34 my-server postfix/smtp[214]: warning: host gmail-smtp-in.l.google.com[74.125.140.27]:25 replied to HELO/EHLO with my own hostname smtp.example.com
Jan  1 23:38:34 my-server postfix/smtp[214]: E60D2BA0658: to=<[email protected]>, relay=gmail-smtp-in.l.google.com[74.125.140.27]:25, delay=1.2, delays=0.43/0.01/0.72/0, dsn=5.4.6, status=bounced (mail for gmail.com loops back to myself)
...
Jan  1 23:40:51 my-server postfix/smtp[222]: warning: host hotmail-com.olc.protection.outlook.com[104.47.57.161]:25 greeted me with my own hostname smtp.example.com
Jan  1 23:40:51 my-server postfix/smtp[222]: warning: host hotmail-com.olc.protection.outlook.com[104.47.57.161]:25 replied to HELO/EHLO with my own hostname smtp.example.com
Jan  1 23:40:51 my-server postfix/smtp[222]: E404DBA0947: to=<[email protected]>, relay=hotmail-com.olc.protection.outlook.com[104.47.57.161]:25, delay=1.1, delays=0.57/0.01/0.48/0, dsn=5.4.6, status=bounced (mail for hotmail.com loops back to myself)

Iptables DNAT 规则:

### SMTP
iptables -t nat -I PREROUTING -p tcp --dport 25 -j DNAT --to-destination 10.99.97.3:25
iptables -t nat -I PREROUTING -p tcp --dport 465 -j DNAT --to-destination 10.99.97.3:465
iptables -t nat -I PREROUTING -p tcp --dport 587 -j DNAT --to-destination 10.99.97.3:587
### IMAP
iptables -t nat -I PREROUTING -p tcp --dport 143 -j DNAT --to-destination 10.99.97.3:143
iptables -t nat -I PREROUTING -p tcp --dport 993 -j DNAT --to-destination 10.99.97.3:993

我正在使用 Postfix 和 MySQL 数据库,因此添加我的域名mydestination将不起作用。

提前致谢。

相关内容