我将Ubuntu16.04LTS服务器设置为具有有效公共ip地址的web服务器(apache mysql和sendmail)。此外,我还使用托管提供商将www.mydomain.com重定向到我的Ubuntu服务器。Web服务器可以正常工作,但是当我使用php脚本发送电子邮件时,收件人会收到垃圾邮件。
我的主机名是servername.mydomain.com
我的主机是127.0.0.1 localhost.localdomain本地主机is地址servername.mydomain.com服务器名
有人知道我该怎么做才能迫使Ubuntu服务器发送正确的电子邮件吗?
这是我从web服务器收到的原始消息的副本。原始电文副本
发布于 2018-11-30 09:50:09
问题可能不在于您的服务器是做什么,而是它的DNS标识在互联网上看上去是什么样子。
如果电子邮件是从一个自称是servername.mydomain.com但其IP地址与servername.mydomain.com的公共互联网DNS报告的地址不匹配的系统发送的,那么该电子邮件当然将被收件人服务器归类为垃圾邮件,因为这显然是一种原始的源地址伪造尝试。PTR“反向DNS”记录是此验证的一个重要部分。例如,如果您的公共IP地址是A.B.C.D,那么PTR记录应该是D.C.B.A.in-addr.arpa. IN PTR servername.mydomain.com.。
这是最古老的反垃圾邮件测试之一。
如果您的Ubuntu web服务器没有静态IP地址和有效的DNS注册(向前和反向DNS记录彼此一致),则不应该直接发送电子邮件,而是将所有发送出去的电子邮件发送到满足这些条件的邮件服务器。也许你的主机提供商有一个你可以使用的邮件服务器?
这被称为“最聪明的配置”。见这个问题的最小配置示例。
但是,现代主机提供商在提交传出邮件时可能需要使用SSL/TLS加密和身份验证。既然如此,请看这里。
不幸的是,有太多的无知的家庭用户允许他们的系统被感染。因此,直接来自具有不匹配PTR记录的IP或已知家庭用户IP块的发送电子邮件往往会自动被归类为垃圾邮件,因为许多现代电子邮件垃圾邮件是由成为垃圾邮件控制僵尸网络成员的受感染主机生成的。
由于PTR记录与任何其他DNS记录类型不同,是根据IP地址块划分的,所以您的公共IP地址的PTR记录可能在网络提供商的控制之下。你试过联系他们吗?如果您拥有静态的公共IP,为其分配自定义的PTR记录在技术上是可能的,但他们可能已经做出了不为家庭客户提供此类服务的政策决定,在这种情况下,您可能需要通过网络提供商的邮件服务器发送发送出去的电子邮件。
另一种方法可能是设置您的sendmail,使用PTR记录声称的实际完全限定的域名向世界介绍自己,然后将SPF / DKIM / DMARC记录添加到您的域,将该FQDN作为您域的授权电子邮件发件人。由于SPF/DKIM/DMARC记录都是TXT类型的记录,将它们添加到您的域应该没有问题。
正确实现的SPF/DKIM/DMARC设置可能会在收件人的垃圾邮件过滤器中生成足够多的正反垃圾邮件点,以抵消或甚至完全覆盖“来自PTR记录的原始邮件服务器的域不匹配”检查所造成的负面影响。
您还应该使用一个或几个免费邮件服务器测试工具来查看您的邮件服务器在反垃圾邮件检查方面的“外观”;例如,这是这里的。有了这些测试的结果,应该更容易找到和修复您的发送邮件被归类为垃圾邮件的主要原因,而不是仅仅通过猜测的典型原因。
https://serverfault.com/questions/942260
复制相似问题