我的家庭服务器位于康卡斯特互联网上,因此我成功地使用康卡斯特智能主机将我的电子邮件转发到网络。但是,我发送回邮箱的所有电子邮件都被退回给我,如下所示,我在日志中找不到任何线索。
Delivery of a message from you has exceeded the retry time:
From: [email protected]
Subject: RE: not working
The following recipients could not be delivered:
[email protected]
我正在使用域名注册网站将 myhost.ca 指向我的 IP 地址,我认为我的 MX 记录设置正确。
此网站http://mxtoolbox.com/SuperTool.aspx关于我的 MX 记录,有如下说明。
Pref Hostname IP Address TTL
30 myhost.ca XX.XX.XXX.XXX 60 min
我已将路由器配置为将以下端口转发到我的 ubuntu 服务器:
HTTP 80
POP 110
POPs 995
IMAP 143
IMAPs 993
SMTP 25
SMTPs 465
SMTPs2 587
仅供参考,Web 服务器和 ssh 访问均运行正常。传入电子邮件似乎是唯一无法正常工作的东西。
从本地机器,我可以通过 telnet 连接到端口 25 和 587,并且“HELO myhost.ca”会按预期响应。从我家外面的任何机器,telnet 都无法连接到这些端口,并且会超时。我预计端口 25 被康卡斯特阻止,但我预计 587 可以使用。
有人可以建议下一步的调试吗?
谢谢阅读!
答案1
这可能是端口被堵塞的情况。
输出是什么/var/log/mail.log
如果您使用防火墙,也许您应该检查任何考虑相关端口的规则。
对于 iptables,sudo iptables -L
应该输出当前规则。如果端口已关闭,您可以使用以下命令告诉 iptables 传入流量:
sudo iptables -A INPUT -p tcp --dport PORT_NUMBER_HERE -j ACCEPT
有关 iptables 的完整操作指南,请参阅这里
还这是一个非常好的教程,关于在 Ubuntu 12.04 上使用 Postfix、Dovecot 和 MySQL 设置邮件服务器,用于虚拟用户邮箱(在生产服务器上亲自测试过)
答案2
我遇到了同样的问题。但是当我添加我的域名并在里面mydestination
添加我的服务器 IP 地址时,这对我有用。就像这样:mynetworks
/etc/postfix/main.cf
mydestination = $myhostname, mydomainName, myuser.myuser, localhost.myuser, localhost,yahoo.com,gmail.com,google.com,mydomain.com
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 My.server.ip.address
将该部分更改My.server.ip.address
为您的服务器 IP 地址。以及myuser
您当前登录的 ubuntu 服务器用户名。(当然,用户名部分应该默认存在)。