电子邮件身份验证基础知识子章节

<spf>声明您的 SMTP 服务器

SPF标志

SPF解释

SPF 是发件人策略框架 (Sender Policy Framework) 的缩写,
它是一种电子邮件身份验证标准,允许您声明哪些 SMTP 服务器有权为您的域发送电子邮件。

它允许您确认发件人地址及其与发送邮件的服务器之间的关系。
如果电子邮件使用您的发件人域名发送,收件人可以识别邮件是否来自您认可的 SMTP 服务器。

建议进行配置,因为如果完全不设置 SPF,一些收件人可能会拒绝您的邮件。.


如何让 SPF 正常工作

有两种不同的方法:

  • 一个“软”错误(~all 标签),如果消息是由未声明的服务器发送的,则会生成一个“软失败”错误。
  • 一个“硬性”选项(-all 标签),如果消息是由未声明的服务器发送的,则会生成“失败”错误。

“软性”设置可以减少甚至避免收件人拒收邮件的情况。
“硬性”设置则会导致部分邮件被拒收,例如服务器未声明 ,或者 邮件被重定向或通过邮件列表发送时。

“硬性”设置使目标邮件服务器有更大的自主权来决定是否接受邮件,这是我们建议的方法。.


如何配置 SPF

SPF 设置需要确切地知道您使用哪些服务器来发送电子邮件。.

使用 RealSender 时,您的域名(example.com)的 TXT 记录应包含字符串
a:example.realsender.com        ,并且看起来像这样:

example.com TXT "v=spf1 a:example.realsender.com ~all" 

使用 HighSender 时,您的域名(例如 example.com)的 TXT 记录应包含字符串
include:spf.realsender.com        ,并且看起来像这样:

example.com TXT "v=spf1 include:spf.realsender.com ~all" 

这些工具将帮助您验证配置:
www.kitterman.com/spf/validate.html *
   检索指定域名的 SPF 记录并确定该记录是否有效;
在线 SPF 检查
   验证您的电子邮件 SPF 设置;发送电子邮件

* = 外部网站链接,将在新页面中打开


防晒系数的缺点

即使所有设置都正确,
如果电子邮件已被重定向(转发)或通过邮件列表发送,消息验证仍可能失败。

在这种情况下,为了保持电子邮件身份验证的一致性,
请将 DKIM 签名域配置为与发件人的“发件人”地址一致。
参见: 电子邮件身份验证高级设置 » <dkim> alignment for dmarc



<spf>在线查询

<spf>在线查询

SPF标志

  1. 发送电子邮件至:
spf@tester.realsender.com
  1. 在线查看SPF验证结果:(
    结果需要一分钟才能显示)
https://tester.realsender.com/spf

如果邮件未正确验证,RealSender SPF 在线检查将添加主题前缀:

!! spf-fail !! SMTP 服务器未列入授权服务器名单,邮件应被拒绝或丢弃 !! spf-softfail !! SMTP 服务器未列入授权服务器名单,但此情况应视为“软失败” !! spf-neutral !! SPF 记录明确指出无法验证邮件的有效性 !! spf-none !! 发件人域不包含任何用于验证邮件的信​​息  

有时,在领域级别记录的信息并不正确/难以理解。.

!! spf-permerror !! 发生永久性错误(例如,SPF 记录格式错误) !! spf-temperror !! 发生临时性错误

SPF 检查针对的是邮件头中隐藏的“Mail-From”电子邮件地址。
只有“From”电子邮件地址是可见的。如果它们的根域名不同,则会显示以下警告:

!! spf-diff !! “Mail-From” 和 “From” 根域不同

如果邮件同时通过了 SPF 检查 DMARC(宽松对齐)的 SPF 对齐检查,您将获得:

|确定| 您的电子邮件通过了 SPF 检查和 SPF 对齐检查

如果只有 SPF DKIM 之一通过了 DMARC(宽松对齐)的对齐检查,则
该消息仍被视为“OK”(可信),并在开头添加 ~(波浪号)符号:

|~OK| 您的电子邮件通过了 SPF 检查(未通过对齐检查)和 DKIM 对齐检查

<dkim>密封电子邮件内容

DKIM标志

dkim解释

DKIM 是 DomainKeys Identified Mail 的缩写,是一种电子邮件身份验证标准,
旨在保证电子邮件(包括附件)自“签名”附加以来未被修改。

它通过在每封外发邮件中添加与域名关联的数字签名来实现这一点。.

使用两个密钥:一个“公钥”和一个“私钥”:

  1. “公钥”发布在签名域的 TXT 记录中。
  2. “私钥”保存在 SMTP 服务器中,用于对电子邮件进行“签名”。

在发送消息时,SMTP 服务器会根据电子邮件消息内容和私钥生成“加密哈希签名”。.

接收系统可以验证电子邮件标头中的签名,将其与电子邮件内容和发件人的“公钥”进行比较。.


如何让 DKIM 正常工作

DKIM 签名不会立即对最终用户可见,它们由电子邮件基础设施添加和验证。.

RealSender SMTP 服务器使用 DKIM 签名对所有外发电子邮件进行签名。.


如何配置 DKIM

RealSender 最初使用连接到 smtp 服务器的自有域对所有外发邮件进行签名,
用户/管理员端无需进行任何设置。

要获得“dkim 域与 dmarc 的对齐”,
消息必须使用与发件人相同的域进行签名。

使用 RealSender 时,您应该
在域名(例如 example.com)的 DNS 设置中添加两条 CNAME 记录,如下所示:

key1._domainkey.example.com CNAME key1._domainkey.yourcompany.realsender.com key2._domainkey.example.com CNAME key2._domainkey.yourcompany.realsender.com

此工具将帮助您验证配置:
toolbox.googleapps.com *

* = 外部网站链接,将在新页面中打开


DKIM的缺点

经过 DKIM 加密的消息无法修改,但任何人都可以阅读。.

未通过验证的签名邮件通常会被拒绝。
如果邮件从发件人到收件人的传输过程中没有被修改,则不应该发生这种情况。

我们遇到过一些罕见的情况,都与行长度有关(行长度必须不超过 990 个字符)。
有些应用程序会将所有内容放在一行中发送,或者在 HTML 中传输非常长的行。
在这种情况下,DKIM 签名会被损坏,导致“dkim=fail”的检查结果。



<dkim>在线查询

<dkim>在线查询

DKIM标志

  1. 发送电子邮件至:
dkim@tester.realsender.com
  1. 在线查看DKIM验证结果:(
    结果需要一分钟才能显示)
https://tester.realsender.com/dkim

如果邮件签名不正确,RealSender DKIM 在线检查会添加主题前缀:

!! dkim-none !! 未找到 DKIM-Signature 标头(有效或无效) !! dkim-fail !! 找到有效的 DKIM-Signature 标头,但签名不包含消息的正确值  

有时无法执行检查:

!! dkim-invalid !! 签名本身或公钥记录存在问题。即签名无法处理。!! dkim-temperror !! 发现一些错误,可能是暂时性的,例如暂时无法检索公钥。

如果邮件使用了不同的域名进行签名,邮件主题中会添加“diff”警告。
如果发件人通过了 SPF 检查和 SPF 对齐(针对 DMARC),则不会显示此警告。

!! dkim-diff !! 此邮件未由发件人域签名

如果邮件同时通过了 DKIM 检查 DMARC(宽松对齐)的 DKIM 对齐检查,您将得到:

|确定| 您的电子邮件已通过 DKIM 检查和 DKIM 对齐检查

如果只有 DKIM SPF 中的一个通过了 DMARC(宽松对齐)的对齐检查,则
该消息仍被视为“OK”(可信),并在开头添加 ~(波浪号)符号:

|~OK| 您的电子邮件通过了 DKIM 检查(未通过对齐检查)和 SPF 对齐检查