SPF 记录未被邮件服务器域识别?

SPF 记录未被邮件服务器域识别?

我目前正在尝试在 Debian 上设置邮件服务器。到目前为止,我已经安装了后缀opendkim。我还配置了一个完整限定域名 (FQDN)域名解析密钥管理信息系统DMARC, 和防晒指数,但后者不知为何不起作用。

SPF 记录我的域名当我运行在线测试(例如 mxtoolbox.com、appmaildev.com)时,可以识别,但不能我的主机名.mydomain.net(邮件就是从这里发送的)。DKIM 和 DMARC 测试均正常。我的主机名.mydomain.net有 A/AAAA 记录,以及 MX 记录。通过该mail命令发送邮件也非常顺畅。邮件到达后不会进入垃圾邮件文件夹。

FQDN 设置为127.0.1.1 myhostname.mydomain.net myhostname“/etc/hosts”。

SPF TXT 记录如下所示: v=spf1 mx a:myhostname.mydomain.net -all

这是我的“/etc/postfix/main.cf”:

# See /usr/share/postfix/main.cf.dist for a commented, more complete version

# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
myhostname = myhostname.mydomain.net

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
# fresh installs.
compatibility_level = 2

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all

# Milter configuration
milter_default_action = accept
milter_protocol = 6
smtpd_milters = local:opendkim/opendkim.sock
non_smtpd_milters = $smtpd_milters

opendkim 密钥生成于我的域名, 不是我的主机名.mydomain.net,但看上去一切正常。

我的 DMARC TXT 记录如下: v=DMARC1;p=拒绝;rua=mailto:[电子邮件保护];fo=1

我在这里忽略了什么?

答案1

一般来说,你应该设置 SPF 记录

  • 对于您打算从中发送邮件的每个域(出现在 SMTP 命令中的域名);MAIL FROM:<[email protected]>RFC 7208, 2.4
  • 可选地,对于您打算从中发送邮件的每个邮件主机(出现在 SMTP 命令中的域名EHLO myhostname.mydomain.net);RFC 7208, 2.3

v=spf1 mx a:myhostname.mydomain.net -all您已在域 mydomain.net 上完成记录安装。一切顺利!

可选地(推荐),您也可以在域 myhostname.mydomain.net 安装记录v=spf1 a -all,但这不是绝对必要的。

答案2

当我运行在线测试(例如 mxtoolbox.com、appmaildev.com)时,mydomain.net 的 SPF 记录可以被识别,但 myhostname.mydomain.net(邮件从其发送)的 SPF 记录却无法被识别。

这是预期结果。SPF 记录针对的是域名,而不是您的电子邮件主机。

您的 SPF 记录基本上表明“myhostname.mydomain.net 被授权为域 mydomain.net 发送电子邮件。

因此,您已验证了域的 SPF 记录。很好。您无需验证电子邮件主机名的 SPF 记录。

相关内容