我没有任何技术问题,但是出于好奇,我想回答一个问题。
这是我目前对电子邮件的工作方式的理解:
拥有自己的域的特权之一是,你可以将其连接到IMAP / POP3 / SMTP服务器,并使用它们与“ anyone@yourdomain.com”之间收发消息。但是,由于垃圾邮件是一个问题,用于发送邮件的SMTP服务器必须在发送的每条邮件中添加一堆标题(DKIM,SPF等),以证明SMTP服务器具有发送权限来自该域的电子邮件。接收SMTP服务器可以将它们与DNS记录交叉检查,以查找其验证电子邮件的合法性。
因此,如果你想廉价地发送与你的域有关的电子邮件,则可以使用Gmail的“代理发送方式”功能。我按照以下帮助文章开始了我的工作:https : //support.google.com/domains/answer/9437157
注意:在安装过程中,我没有选中“以别名方式处理”选项。
但是等等...不需要其他DNS配置吗?我已经在Cloudflare中注册了我的域名,并且那里没有与Google相关的条目。
但这似乎只是为了阻止Google使用你的服务器发送垃圾邮件。是什么阻止Google模拟他们想要的任何电子邮件地址?如果Google的SMTP服务器无法添加合法的SPF / DKIM标头,为什么接收SMTP服务器会信任来自“ anyone@yourdomain.com”的电子邮件?
简短的答案是没有什么可以阻止Google这样做,而DMARC正是针对这种情况而创建的。
没有什么可以阻止Google模拟任何域的。但是,当接收者接收到不是从该From:
字段中指示的服务器发送的电子邮件时,接收者可以(并且应该)做一些事情。
尝试使用刚刚添加到其他@gmail.com
收件箱的别名发送电子邮件。你会通过发件人电子邮件地址后面的gmail.com看到该信息。但是其他电子邮件接收者可能会做更多的事情:用红色感叹号和欺诈警告标记该邮件,将其放入垃圾邮件,甚至完全拒绝接收。Gmail可能有一些硬编码的信任,但是尝试从你自己的SMTP服务器上进行此操作,很可能会发生上述情况。
就像你在问题中所说的那样,你可以通过将电子邮件标记gmail.com
为SPF作为授权发件人(可以防止他人伪造其他域名,但不会阻止Google)来授权电子邮件,甚至可以使用DKIM签名电子邮件(无法通过Gmail UI签名),但你可以在某些电子邮件客户端中执行此操作,或者使用像我这样的自定义Python脚本发送电子邮件; Google不能在不知道密钥的情况下执行此操作)。
但是,这仅解决了问题的一方面-授权合法的电子邮件。但是,如果SMTP服务器仍然收到未验证的电子邮件怎么办?如果他们以前已经收到来自同一发件人的电子邮件,该邮件是DKIM签名的,该怎么办?如果DKIM通过但SPF失败怎么办?
因为在这种情况下的行为很大程度上未指定,并且发送者还想检查其DKIM / SPF授权是否确实有效,并且是否有人想欺骗它们,所以创建了另一个标准:DMARC。它引入了另一个DNS TXT记录,你可以在其中说出需要通过哪些检查,如果检查失败,该怎么办,以及接收者应向域所有者报告的哪些基本分析。
您提到gmail本身可能具有某种硬编码的信任(说得通),但是其他电子邮件提供商又如何呢?您是说从gmail接收电子邮件的任何电子邮件服务器必须固有地信任gmail并接受它可以使用任何域吗?
我也想说第二部分-其他人可以给Gmail服务器更高的信任度,因为我是他们的欺诈检测算法。但这只是我个人非常疯狂的猜测。而且,他们绝对不会“必须天生就信任Gmail”-如果有人声明要求DKIM签名的DMARC策略,则接收服务器不能“因为Gmail受信任”而只是接受它(即使它实际上可能是授权的发件人,只是忘记了自己的政策)