我在 AWS 实例上配置了 SMTP 服务器 (Postfix)。然而,为了防御垃圾邮件,大多数管理良好的电子邮件服务器都会拒绝邮件发送来自 IP 无法解析回发送服务器的相同主机名的任何主机。
当我从 CLI 发送测试消息时:
mail -s 'TEST Subject' [email protected] <<< 'Test Message Sent from Postfix Server'
它被收件人的邮件服务器拒绝。 如何为分配给我的 AWS 邮件服务器的弹性 IP 创建 PTR 记录?
答案1
由于 Amazon 拥有分配您的弹性 IP 的子网,因此他们需要为您创建 PTR 记录。您不能在自己的 DNS 记录中设置它当然,除非您控制要为其创建 PTR 记录的 Internet 可路由 IP 的子网。
我已经有一段时间没有这样做了,但经过一番谷歌搜索后,我终于在一篇旧的(2010)AWS 博客文章中找到了一个链接,他们的用户可以在其中提交 PTR IP 到 NAME 映射的请求。
步骤1:
设置A和AAAADNS 中的记录以解析为邮件服务器的 AWS Elastic IP IPv4 和 IPv6 地址。
警告:只有 IPv4 地址是“弹性IP“- 如果您销毁 AWS 虚拟机并重新创建它,尽管您可以将弹性 IPv4 IP 重新分配给新实例,但这是不是可以使用 IPv6 地址。您必须提交新的 PTRIP 到名称每次您使用 IPv6 地址重新创建 VM 时,都会将请求映射到 AWS。对于弹性 IP,IPv4 PTR 记录将保持正确。
第2步:
后您的 DNS 更改已传播,接下来您登录 AWS 控制台并访问下面的链接,您可以在其中请求 AWS 创建IP 到名称您的 IPv4 和 IPv6 弹性 IP 所需的映射**:
https://console.aws.amazon.com/support/contacts?#/rdns-limits
处理完您的请求后,亚马逊将向您发送一封确认电子邮件,表明记录已创建。
更改传播后,您可以使用该host
命令检查 PTR 记录。下面的示例使用 IP 1.2.3.4 查询 Google 的 DNS 8.8.8.8:
host -t PTR 1.2.3.4 8.8.8.8
其中报告:
Using domain server:
Name: 8.8.8.8
Address: 8.8.8.8#53
Aliases:
4.3.2.1.in-addr.arpa domain name pointer mail.myMailserver.org.
我建议在邮件服务器上线之前向 AWS 请求 PTR 记录,这样就不会出现与传播相关的延迟。