无法使用 postfix 从 ec2 实例发送电子邮件

无法使用 postfix 从 ec2 实例发送电子邮件

我发现我有一段时间没有收到电子邮件。当我检查日志时,我看到了如下错误消息:

  1 Mar  7 03:37:32 ip-179-45-37-216 postfix/smtpd[24969]: connect from localhost[127.0.0.1]
  2 Mar  7 03:37:32 ip-179-45-37-216 postfix/smtpd[24969]: 92963C1550: client=localhost[127.0.0.1]
  3 Mar  7 03:37:32 ip-179-45-37-216 postfix/cleanup[24972]: 92963C1550: message-id=<[email protected]>
  4 Mar  7 03:37:32 ip-179-45-37-216 postfix/qmgr[23814]: 92963C1550: from=<[email protected]>, size=1398, nrcpt=1 (queue active)
  5 Mar  7 03:37:32 ip-179-45-37-216 postfix/smtpd[24969]: disconnect from localhost[127.0.0.1]
  6 Mar  7 03:37:32 ip-179-45-37-216 postfix/smtp[24973]: connect to ASPMX.L.GOOGLE.com[2607:f8b0:400e:c02::1b]:25: Network is unreachable
  7 Mar  7 03:37:34 ip-179-45-37-216 postfix/smtp[24973]: 92963C1550: to=<[email protected]>, relay=ASPMX.L.GOOGLE.com[74.125.28.27]:25, delay=1.8, delays=0.09/0/0.17/1.5, dsn    =2.0.0, status=sent (250 2.0.0 OK 1425699441 md9si17726259pdb.104 - gsmtp)
  8 Mar  7 03:37:34 ip-179-45-37-216 postfix/qmgr[23814]: 92963C1550: removed 

该域名work.com托管在 google gmail 上。我该如何找出问题所在?

我没有在该 aws ec2 实例使用的安全组中设置任何出站规则。

答案1

该日志有两行重要内容

Mar  7 03:37:32 ip-179-45-37-216 postfix/smtp[24973]: connect to ASPMX.L.GOOGLE.com[2607:f8b0:400e:c02::1b]:25: Network is unreachable
Mar  7 03:37:34 ip-179-45-37-216 postfix/smtp[24973]: 92963C1550: to=<[email protected]>, relay=ASPMX.L.GOOGLE.com[74.125.28.27]:25, delay=1.8, delays=0.09/0/0.17/1.5, dsn    =2.0.0, status=sent (250 2.0.0 OK 1425699441 md9si17726259pdb.104 - gsmtp)

第一行告诉我们您的服务器尝试通过 IPv6 连接 Gmail 服务器,但是由于您环境中的 IPv6 网络已损坏,因此无法连接。第二行告诉我们IPv6 故障后,postfix 将恢复到 IPv4 模式并通过 IPv4 地址 (74.125.28.27) 发送您的电子邮件。

您可以通过此参数强制 postfix 禁用 postfix 中的 IPv6main.cf

inet_protocols = ipv4

参考:Postfix 文档

相关内容