几个月前,我为我的三人公司实施了SPF / DKIM / DMARC。 试用期过后,我将DMARC切换到“p =拒绝”,这样,如果邮件在SPF / DKIM失败时被拒绝。 一般来说,它的工作原理是:我们的电子邮件通过,根据DMARC报告的数据,试图伪造来自我们的域名的垃圾邮件的电子邮件被拒绝。 服务器是Ubuntu / Postfix。
唯一不行的是,对于日历,我们一直在使用带有Google帐户的Google日历和我们的工作电子邮件(与我们的公司域名,而不是Gmail地址)。 当我们其中一个人与Google与Google Apps代pipe的电子邮件地址的与会者创buildGoogle日历邀请(在Google网站上或通过Thunderbird / Lightning with Google Calendar提供)时,Google会拒绝我们的邀请电子邮件。 来自Google代表Google应用托pipe的域名的反弹消息表示拒绝是基于我的域名的DMARC政策:
Google试图传送您的讯息,但遭到aspmx.l.google.com的收件人网域[Google Apps托pipe域名移除]服务器的拒绝。 其他服务器返回的错误是:由于域的DMARC策略,未接受来自[My Company's Domain Removed]的未经身份validation的电子邮件。 如果这是一个合法的邮件,请联系[My Company's Domain Removed]域的pipe理员。
下面是google.com的(大概)有效的DKIM签名。 换句话说,谷歌拒绝将自己的DKIM签名的电子邮件作为垃圾邮件,因为这不是我的DMARC政策所说的。 但我无法弄清楚如何使我的DMARC政策说不然。 对于SPF,我可以将Google指定为有效的发件人。 但是我找不到任何方法来为DKIM做这件事:我可以在我的DKIMlogging中写道:“如果它有一个有效的Google DKIM签名,那不是垃圾邮件。 这样的事情存在吗? 一种授权除“发件人”域以外的另一个DKIM签名者的方法?
请注意,您可以在DNS中发布多个DKIMselect器。 您已经用于本地服务器的另一个用于源自Google Apps的邮件(例如, ubuntu._domainkey.yourdomain.com和google._domainkey.yourdomain.com )。 在Google Apps设置中启用DKIM签名,而日历邀请将由google.com和yourdomain.com签名(后者将对应于google._domainkey.yourdomain.comselect器)签名。 如果您已将Google IP空间添加到您的SPF定义中,这应该可以解决DMARC的问题。 希望这可以帮助。
不同于mail from SPF和邮件头/内容DKIM,dmarc基于From头。 所以你的SPF(我会build议你添加谷歌,如果你必须使用谷歌日历)。
首先添加谷歌的spf,并确保dmark设置为放松,他们使用dmarc取证报告中的信息进行更多的定义调整。
我会通过电子邮件发送给dmarc小组,看看他们是否有其他build议,如果您在Google应用中注册了一个电子邮件帐户,您可以将所有电子邮件从内部服务器(如电子邮件服务器)中继。