为什么我的应用程序发送的电子邮件被标记为垃圾邮件?

我有两个Web应用程序在同一台服务器上运行。 第一个是www.nimikri.com,另一个是www.hourjar.com。 这两个应用程序共享相同的IP地址(75.127.100.175)。 我的服务器是通过一个共享的托pipe公司。

我一直在testing我的应用程序,起初我所有的电子邮件都被传送给我。 然后几天前,这两个应用程序的每封电子邮件都被转移到了我的垃圾邮件箱(在Gmail和谷歌应用程序中)。 到目前为止,应用程序只是发送电子邮件给我和其他人,所以我知道人们不会手动将它们标记为垃圾邮件。

我做了一个反向DNS查找我的IP和我得到的结果是这些:

100.127.75.in-addr.arpa NS DNS2.GNAX.NET。

100.127.75.in-addr.arpa NS DNS1.GNAX.NET。

如果反向DNS查找指向nimikri.com和hourjar.com,或者他们是否设置了正确的方式?

我在电子邮件标题中注意到这两行:

收到:来自nimikri.nimikri.com

来自:小时Jar <[email protected]>

不同的域名会导致gmail认为这是垃圾邮件?

以下是其中一封电子邮件的标题。 请让我知道,如果任何这看起来像垃圾邮件的红色标志。 谢谢。

Delivered-To: [email protected] Received: by 10.231.157.85 with SMTP id a21cs54749ibx; Sun, 25 Apr 2010 10:03:14 -0700 (PDT) Received: by 10.151.130.18 with SMTP id h18mr3056714ybn.186.1272214992196; Sun, 25 Apr 2010 10:03:12 -0700 (PDT) Return-Path: <[email protected]> Received: from nimikri.nimikri.com ([75.127.100.175]) by mx.google.com with ESMTP id 28si4358025gxk.44.2010.04.25.10.03.11; Sun, 25 Apr 2010 10:03:11 -0700 (PDT) Received-SPF: neutral (google.com: 75.127.100.175 is neither permitted nor denied by best guess record for domain of [email protected]) client-ip=75.127.100.175; Authentication-Results: mx.google.com; spf=neutral (google.com: 75.127.100.175 is neither permitted nor denied by best guess record for domain of [email protected]) [email protected] Received: from nimikri.nimikri.com (localhost.localdomain [127.0.0.1]) by nimikri.nimikri.com (8.14.3/8.14.3) with ESMTP id o3PH3A7a029986 for <[email protected]>; Sun, 25 Apr 2010 12:03:11 -0500 Date: Sun, 25 Apr 2010 12:03:10 -0500 From: Hour Jar <[email protected]> To: [email protected] Message-ID: <[email protected]> Subject: [email protected] has invited you to New Event MIME-Version: 1.0 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit 

ChrisF,这里是消息的主体:

 <h1>Hour Jar</h1><h3>New Event</h3><p>To view the event, please go to hourjar.com/event?event.id=2&guest.id=2</p> 

Chaitanya,是的,从我的服务器的每一条消息是垃圾邮件。

BillThor,谢谢你回答我有关rDNS的问题。 我会解决你指出的问题,看看他们是否有帮助。

杰夫最近在他的博客上发表了一篇文章,名为“你想发送一些电子邮件(通过代码)” ,详细介绍了你应该使用的一些技巧,以确保你的电子邮件得到传递。 简而言之:

  • 检查您的反向PTR DNSlogging
  • configurationDomainKeys签署您的传出电子邮件
  • 设置SenderID
  • testing你做了什么

确保您的系统不在黑名单中: http : //www.mxtoolbox.com/blacklists.aspx

为您的域名发布SPFlogging,如果可以的话也发布DomainKeys(在大多数情况下,这些可能不会起作用,但为什么不行)。

SPF和域名键实际上并不能使你的邮件看起来不像垃圾邮件 – 垃圾邮件发送者也经常拥有它们。

主要的事情要确保是:

  • 你有一个正确的反向DNS为您的邮件中继
  • 您的消息不是垃圾邮件
  • 你不与任何真正发送垃圾邮件的人共享邮件转发(这是一个关键点)
  • 您不要伪造或发明不可修改的发件人(特别是信封发件人)地址。 这听起来很明显,但令人惊讶的是有多less人试图从webserver @ localhost发送邮件,并想知道为什么永远不会到达。 将信封发件人设置为您所控制的域; 确保如果您碰巧设置了SPF,则允许发送。 请勿将您的用户生成的邮件作为信封发件人发送(如果您愿意,请务必设置回复)

通常情况下,你的信息不能到达的原因是你在黑名单上,或者被认为名声不好。 这主要是因为你与垃圾邮件发送者共享一个中继,或者是你自己。

如果您有名誉问题,但无法摆脱它,分配一个新的IP地址可能会更容易(但请确保将来您不会发送垃圾邮件,甚至不会意外)

我们也看到了一些错误的系统pipe理员认为某些IP注册机构分配的IP块不够“发送邮件给它们”的问题。 这些被误导的个人经常为美国主要公司工作,并决定所有非ARIN IP地址被垃圾邮件发送者使用。 可悲的是,除了使用ARIN注册的IP空间让您的中继向这些失败者传递消息之外,没有办法解决这个问题。

免责声明:我为一家过滤垃圾邮件的安全公司工作。

你错过了一个rDNS映射。 这表明您的电子邮件服务器没有正确configuration,并启动您被标记为垃圾邮件的方式。 在DNS中丢失SPFlogging不会有帮助,但也不会有太大的阻碍。

邮件正文的非标准格式也会产生问题。 Unix默认是使用换行符终止。 该标准要求回车换行终止。 还需要确保线路长度小于80个字符。

遵守标准将大大解决您的问题。 不要气馁,我看到很多大公司的邮件因为不符合规定而获得很高的垃圾邮件评级。

  • 避免任何看起来像垃圾邮件的string。

大多数垃圾邮件检查这些天是贝叶斯,这意味着您的邮件是使用模糊algorithm,试图猜测是否类似于已知垃圾邮件或火腿(良好)的消息(主要是通过检查常见垃圾邮件的单词和短语的频率)检查。

  • 将单个邮件发送给每个收件人而不是副本。

最好将单个邮件发送给每个收件人,而不是在BCC字段中使用多个地址,因为许多垃圾邮件filter(以及许多ISP)会自动将多个收件人标记为垃圾邮件。

  • 如果可能的话,通过您的ISP的邮件服务器发送,而不是使用本地的SMTP服务器。

从您的计算机上运行的邮件服务器发送的邮件可能会被标记为垃圾邮件,因为某些邮件服务器将尝试联系发送服务器的源IP(将使用本地IP地址失败)。

  • 尝试使用较小批量的电子邮件。

看起来像Hotmail这样的大型邮件主机会识别出同一个消息同时发送给大量用户的时候,所以你应该错开发送消息来发送你的消息批次。

  • 尽量减less附件的使用。
  • 确保发送电子邮件的计算机具有反向PTRlogging。

什么是反向PTRlogging? 这是您的ISP必须为您configuration的一种方法 – validation您从特定IP地址发送的电子邮件实际上属于它声称来自的域的方法。

  • 在DNS和代码中configurationDomainKeys Identified Mail。

什么是DomainKeys识别的邮件? 使用DKIM,您可以用您的私钥“签名”您发送的每封电子邮件,只有您可能知道的一个密钥。 这可以通过尝试使用存储在公共DNSlogging中的公钥来解密电子邮件来validation。

  • 在您的DNS中设置一个SenderIDlogging。

说实话,与上面两个相比,SenderID有点“高兴”。 但是,如果你走了这么远,你也可以走远点。 SenderID,虽然有点陈旧和实物..微软/ Hotmail中心..并没有多less额外的努力。

SenderID并不复杂。 这是另一个TXT DNSlogging,例如,example.com,其中包含特殊格式的string,logging所有允许的邮件来自IP地址的IP地址。

来源和附加信息:

  • XeQute
  • Spamassassin常见问题
  • 杰夫·阿特伍德的同一主题的post