计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
implementing-dmarc-dkim-spf-email-security【效率与协作】SPF、DKIM 和 DMARC 是邮件认证的三大支柱,共同防止域名伪造、验证消息完整性并定义处理未认证邮件的策略。正确实施可显著减少冒充组织域名的钓鱼攻击。
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
SPF、DKIM 和 DMARC 是邮件认证的三大支柱。三者共同防止域名伪造、验证消息完整性并定义处理未认证邮件的策略。正确实施可显著减少冒充组织域名的钓鱼攻击。
发布 DNS TXT 记录,列出被授权代表您的域名发送邮件的 IP 地址和邮件服务器。接收服务器根据此列表检查信封发件人的 IP。
使用私钥向外发邮件添加加密签名。相应的公钥在 DNS 中发布。接收方验证签名以确保消息在传输过程中未被篡改。
基于 SPF 和 DKIM 构建,为认证失败的消息指定策略(none/quarantine/reject),并提供监控伪造尝试的报告机制。
# 检查现有 SPF 记录
dig TXT example.com | grep spf
# 检查现有 DKIM 选择器
dig TXT selector1._domainkey.example.com
# 检查现有 DMARC 记录
dig TXT _dmarc.example.com
# example.com 的 DNS TXT 记录
v=spf1 ip4:203.0.113.0/24 include:_spf.google.com include:spf.protection.outlook.com -all
关键 SPF 机制:
ip4: / ip6: — 授权特定 IP 范围include: — 包含另一个域的 SPF 记录a — 授权域名的 A 记录 IPmx — 授权域名的 MX 记录 IP-all — 硬拒绝其他所有(推荐)~all — 软拒绝(监控阶段)# 生成 DKIM 密钥对(2048 位 RSA)
openssl genrsa -out dkim_private.pem 2048
openssl rsa -in dkim_private.pem -pubout -out dkim_public.pem
# 格式化公钥用于 DNS(删除头部,合并行)
grep -v "PUBLIC KEY" dkim_public.pem | tr -d '\n'
selector1._domainkey.example.com 的 DNS TXT 记录:
v=DKIM1; k=rsa; p=MIIBIjANBgkqhki...
# _dmarc.example.com 的 DNS TXT 记录
# 阶段 1(监控):
v=DMARC1; p=none; rua=mailto:dmarc-aggregate@example.com; ruf=mailto:dmarc-forensic@example.com; pct=100
# 阶段 2(隔离):
v=DMARC1; p=quarantine; rua=mailto:dmarc-aggregate@example.com; pct=25
# 阶段 3(拒绝):
v=DMARC1; p=reject; rua=mailto:dmarc-aggregate@example.com; pct=100
使用 scripts/process.py 解析 DMARC 聚合 XML 报告,识别认证失败、未授权发件人和伪造尝试。