OpenDMARC を使う
概要
OpenDMARC はメールヘッダーのDKIM およびSPF の検証結果と送信元ドメインを確認し、詐称が疑われる場合の扱いを送信元ドメインに問い合わせる仕組みです。
apt install opendmarc
adduser postfix opendmarc
mkdir -p /var/spool/postfix/opendmarc
chown -R opendmarc.opendmarc /var/spool/postfix/opendmarc
opendmarc.conf
vi /etc/opendmarc.conf
AuthservID mail4-loog
# change socket
Socket local:/var/spool/postfix/opendmarc/opendmarc.sock
# Skip ip address or domain (127.0.0.1, ::1)
IgnoreHosts /etc/opendmarc/ignore.hosts
# SPF 検証済みヘッダーがあっても、SPF を再検証する。
SPFIgnoreResults false
# SPF 検証を行う。
SPFSelfValidate true
# DMARC 検証結果がfalse であり、送信元ドメインのDMARCポリシーがあれば従う。
RejectFailures true
# RFC5322 に準拠できていないメールは弾く。
RequiredHeaders true
IgnoreAuthenticatedClients true
ignore.hosts
mkdir -p /etc/opendmarc
vi /etc/opendmarc/ignore.hosts
127.0.0.1
::1
chown -R opendmarc.opendmarc /etc/opendmarc
Postfix main.cf
vi /etc/postfix/main.cf
# OpenDMARC
milter_default_action = accept
smtpd_milters=unix:/opendkim/opendkim.sock, /opendmarc/opendmarc.sock
non_smtpd_milters=$smtpd_milters
Append DNS record.
# p=none (Trial. Allways received.), p=reject (Production)
# adkim, aspf (r: allow subdomain, s: only domain)
_dmarc TXT "v=DMARC1; p=none; pct=100; adkim=r; aspf=r"