我正在将我的个人网站迁移到 EC2 上托管。我已经启动并运行了网站部分,但我无法设置电子邮件服务器。我所做的就是接收少量电子邮件(每月最多 100 封)并将它们转发到我的 gmail 地址。我理解塞拉利昂是 AWS 推荐的电子邮件解决方案,但它没有设置为邮件中继(ctrl + F“邮件中继”查找解释此问题的评论)。
我按照以下设置了 postfix这些说明,并且可以验证 postfix 是我们并且在我的服务器的 25 端口上运行:
# netstat -ltnp | grep 25
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 15052/master
我还验证了 MX DNS 记录正确指向我的网站使用的相同 DNS 记录(我已验证该记录是可访问的):
# dig bleaney.ca mx
...
;; ANSWER SECTION:
bleaney.ca. 2975 IN MX 0 bleaney.ca.
我已修改应用于我的 EC2 实例的安全组,使其具有以下规则:
80 tcp 0.0.0.0/0 ✔
22 tcp 0.0.0.0/0 ✔
25 tcp 0.0.0.0/0 ✔
尽管如此,当我向我的域名发送电子邮件时,我的 postfix 日志中没有任何内容显示,并且没有可送达的消息返回给我发送的邮件提供商。似乎仍有某些东西阻塞了端口 25,因为这是我从端口扫描中得到的全部结果:
Not shown: 996 filtered ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
139/tcp open netbios-ssn
445/tcp open microsoft-ds
我也填写了此表格并取消了电子邮件限制。
那么,经过这一切,你知道我错过了什么吗?我怎样才能使这个中继工作起来?
答案1
为什么 Postfix 在环回接口上监听?
在您的 netstat 输出中,127.0.0.1:25 应该看起来像 0.0.0.0:25
nmap 52.32.135.192
Starting Nmap 6.47 ( http://nmap.org ) at 2016-01-03 04:33 EST
Nmap scan report for bleaney.ca (52.32.135.192)
Host is up (0.17s latency).
Not shown: 997 filtered ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp closed smtp
80/tcp open http
尝试设置:
inet_interfaces = all