YANO's digital garage

Copyright ©YANO All rights reserved. https://www.bravotouring.com/~yano/

Last-modified: 2024-04-17 (水)


[一語一絵/IT系]

DKIM始めました / 2020-10-03 (土)

去年の7月に書いたDMARCレポートの件。

メールアドレス偽装による「なりすましメール」と高をくくっていたのだが、たまにチェックしてたらSPFをPASSしているものが目につくようになってきた。問題のメールそのものは確認できないので微妙だが、踏み台リレーにされているような形跡も確認できない事から送信元IPアドレスが詐称されている可能性が考えられる。

名前やメールアドレスよりは難易度は高いものの、その筋の知識があればIPアドレス詐称は容易にできてしまい、いずれも完全に防ぐ事が難しいので、電子署名によるDKIMを導入することに。

というわけで、OpenDKIMをインストール。参考までOpenDMARCはチェックする側の方だ。

ドメインは複数あるものの、メール送受信で使っているのはほぼほぼbravotouring.comだけなので、シングルドメインの設定。

root@vps:~# apt install opendkim opendkim-tools
root@vps:~# mkdir /etc/opendkim
root@vps:~# mkdir /etc/opendkim/key
root@vps:~# mkdir /etc/opendkim/key/bravotouring.com
root@vps:~# opendkim-genkey -D /etc/opendkim/key/bravotouring.com/ -d bravotouring.com -s default
root@vps:~# chown -R opendkim:opendkim /etc/opendkim/key
root@vps:~# cat << '_EOF_' >> /etc/opendkim.conf
Domain                bravotouring.com
KeyFile               /etc/opendkim/key/bravotouring.com/default.private
Selector              default
Canonicalization      simple
Mode                  sv
SubDomains            no
ADSPAction            continue
_EOF_
root@vps:~# cat << '_EOF_' >> /etc/default/opendkim
SOCKET="inet:8891@localhost"
_EOF_
root@vps:~# service opendkim restart
root@vps:~# vi /etc/postfix/main.cf
root@vps:~# cat << '_EOF_' >> /etc/postfix/main.cf
milter_default_action = accept
non_smtpd_milters = $smtpd_milters
smtpd_milters = inet:localhost:8891
_EOF_
root@vps:~# postfix check
root@vps:~# service postfix reload
root@vps:~# postconf | egrep 'milter_default_action|non_smtpd_milters|smtpd_milters'
root@vps:~# vi /etc/opendkim/key/bravotouring.com/default.txt /etc/nsd/zones/bravotouring.com.zone
~~ zoneファイルに_domainkey公開鍵のTXTレコードを追加 ~~
root@vps:~# nsd-control reload
root@vps:~#

最終的にgmailのアドレス宛に送信して

Authentication-Results: mx.google.com;
       dkim=pass header.i=@bravotouring.com header.s=default header.b=qYH6ReqD;
       spf=pass (google.com: domain of XXXX@bravotouring.com designates 2403:3a00:202:1112:***:***:***:*** as permitted sender) smtp.mailfrom=XXXX@bravotouring.com;
       dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=bravotouring.com
となればOK。

あとはDMARCのポリシーを"none"から変更すれば完了だが、"quarantine"でいいんだっけかな?

【参照】
●Qiita https://qiita.com/
PostifxでDKIM認証する 2015年12月21日
ドメイン管理者が **まず最初に** 実施するなりすましメール対策(DMARC、SPF、DKIM) 2017年12月8日
Amazon Linux 2でDKIMの設定 (ついでにSPF/DMARCも) 2018年8月28日
自ドメインのDNSとPostfixをSPF/DKIM対応させてみた 2018年12月28日
OpenDKIM で迷惑メール判定を回避する 2019年11月20日
●なりすまし対策ポータル ナリタイ https://www.naritai.jp/
DMARC を準備しよう
DMARC詳細仕様-1
●IIJ Engineers Blog https://eng-blog.iij.ad.jp/
世界と日本のメール送信ドメイン認証 2017年12月10日
●SendGridブログ https://sendgrid.kke.co.jp/
『なりすまし』を防ぐDMARCとは? 2014年9月30日
Yahoo.comのDMARCポリシーが変更されました 2014年10月3日
よくある質問 – DKIM編 2015年5月15日
DMARCがもっとよくわかる!概要とレコードの読み方 2015年6月9日
GmailのDMARC設定が変更されます 2016年5月17日
Gmail/MicrosoftのDMARC設定が年内に変更されます 2016年8月5日
メール認証概論 2016年11月18日
SPF, DKIMの特徴と違い 2018年8月7日
●JPNIC https://www.nic.ad.jp/
インターネット用語1分解説~SPFとは~ 2011年10月17日
インターネット用語1分解説~DKIMとは~ 2017年10月16日
インターネット用語1分解説~DMARCとは~ 2018年2月15日
●MxToolbox https://mxtoolbox.com/
DNS Lookup Tool - DNS Tools
MX Lookup Tool - Check your DNS MX Records online
DKIM Check- DomainKeys Identified Mail (DKIM) Record Lookup
DMARC Check Tool - Domain Message Authentication Reporting & Conformance Lookup
●ArchWiki https://wiki.archlinux.jp/
Postfix
Unbound
NSD
OpenDKIM
OpenDMARC
●Wikipedia http://ja.wikipedia.org/wiki/
電子メール
電子署名
送信ドメイン認証
SPF
ドメインキー
DKIM
DMARC