目前,我们组织中的一些员工使用 Google 日历,他们使用我们自己的电子邮件域注册 Google 日历,[电子邮件受保护],当他们创建会议邀请时,Google 的日历服务器将使用 FROM 地址发送会议邀请[电子邮件受保护]致会议参加者。我在 SPF 记录中包含 _spf.google.com,允许 google 服务器代表 @ourdomain.com 发送电子邮件。
但是,如果与会者有[电子邮件受保护]电子邮件地址,当 Google 服务器尝试发送会议邀请时[电子邮件受保护]到[电子邮件受保护],我们的电子邮件服务器(后缀)将拒绝电子邮件,因为已指定“reject_sender_login_mismatch”:
smtpd_recipient_restrictions =reject_unauth_pipelined、reject_sender_login_mismatch、reject_unknown_sender_domain、permit_mynetworks、permit_sasl_authenticated
什么是最合适的解决方案,只允许谷歌服务器传送到@ourdomain.com而不登录并绕过reject_sender_login_mismatch?有没有办法指定 _spf.google.com 作为 Google 服务器列表,而无需输入确切的 IP 地址(因为服务器将来可能会发生变化)?
答案1
通常reject_sender_login_mismatch
会阻止您在端口 25 上接收来自任何外部服务器的邮件。通常,您不应将其放在端口 25 上。
如果您确实只想在端口 25 上从一台特定外部服务器接收未经身份验证的电子邮件,那么您有多种选择。一种是使用 SPF 过滤器,然后用于header_checks
所有REJECT
未发往/来自您的域或 SPF 失败的邮件。这对于 IP 变化具有弹性。
第二种方法是将经过身份验证的电子邮件移至提交端口(例如 587),无论如何,这都是应该做的。然后可以使用iptables
您选择的防火墙过滤端口 25。解析_spf.google.com
这些记录并将其添加到过滤规则(并通过 cron 更新)非常简单。