我最近更改了我的邮件提供商,现在我无法接收来自crontab的电子邮件。 在我的maillog中:
Sep 12 02:57:25 myhostname postfix/qmgr[14013]: 4BEE35D8005A: from=<[email protected]>, size=886, nrcpt=1 (queue active) Sep 12 02:57:28 myhostname postfix/smtp[50109]: 4BEE35D8005A: to=<[email protected]>, relay=mx.newmailserver.com[XXX.XXX.XX.XX]:25, delay=144207, delays=144204/0.01/1.3/1.8, dsn=4.7.1, status=deferred (host mx.newmailserver.com[XXX.XXX.XX.XX] said: 450 4.7.1 Client host rejected: cannot find your hostname, [YYY.YYY.YYY.109] (in reply to RCPT TO command))
在我的resolv.conf中:
nameserver YYY.YYY.YYY.22 search com
这个服务器指向我的一个子域。 dig myhostname.localdomain的结果:
;; QUESTION SECTION: ;myhostname.localdomain. IN A ;; AUTHORITY SECTION: 54766 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2016091600 1800 900 604800 86400
我读过这个“ 客户端主机拒绝 ”的错误是与反向PTR有关,但是我不知道我在这个logging中写什么和什么。
PS:以我的名字和IP号码开头的名字被改变了,但其余的都是写的(ex:nameserver,localdomain …)
通常邮件服务器检查反向DNS字段(又名PTR DNS条目)。 通常,这样做是为了validation一个电子邮件服务器,从一个域名宣布“工作”是真的。 在DNS中也有MXlogging会有所帮助。
您应该确保您的DNS值与您的服务器正在宣布的电子邮件域相匹配。
如果您要运行自己的邮件服务器,您总是需要设置一些东西。 如果您将其中任何一项closures,那么您可能会发现您的电子邮件在某个时间点被多个提供商阻止。
MXlogging
邮件交换(MX)logging是您的DNS区域文件中的一个条目,用于标识负责接收到您的域的电子邮件的服务器。
如果您没有MXlogging,则不要期望收到电子邮件。
您可以在www.mxtoolbox.com上使用MX查找查找您的MXlogging。
PTRlogging
如果您没有指针(PTR)logging,则提供商拒绝接受您发送的电子邮件的最常见原因之一是。
当你的邮件服务器发送一封邮件时,它告诉接收服务器它的主机名和IP地址是什么。
接收服务器将采取IP地址,并说什么是IP地址的主机名称。 如果DNS服务器回来并且表示电子邮件来自的IP地址的主机名与电子邮件来自的服务器所声称的主机名不同,则接收服务器可能会拒绝该电子邮件。
您可以在www.mxtoolbox.com上使用反向查找来检查您的PTRlogging。
SPFlogging
发件人策略框架(SPF)logging告诉世界什么服务器可以发送您的域名的电子邮件地址。
越来越多的公司正在对其邮件filter进行SPF检查。 如果您发送电子邮件给SPF检查打开的公司之一,并且发送您的电子邮件的服务器不包含在您的SPFlogging(或者如果您没有SPFlogging),您的电子邮件将被阻止。
您可以在www.mxtoolbox.com上用SPF Record Lookup查找您的SPFlogging。
我需要做什么来创build这些DNSlogging?
对于MX或SPFlogging,如果您的提供商允许您修改区域文件中的DNSlogging,则可以自己创buildlogging。
如果您需要创buildPTRlogging,请联系您的提供商并让他们创buildPTRlogging。 您将需要指定您用于邮件服务器的主机名和公用IP地址。
这个DNS的东西在我脑子里还不清楚,所以对于那些来这里也有同样困难的人来说:
使用cronjob从我的服务器发送电子邮件到我的电子邮件被阻止。
所以解决办法是:
MAILFROM="[email protected]" *这个信息对我来说是最重要的,因为我认为我必须改变我的DNSCompany中的内容