複数のドメインを複数のカギ(それぞれのカギ)で管理する方法です。
Rspamdを利用する場合、Rspamd内のモジュールを利用します。
下記の記事を参考にしてください。
迷惑メール対策ツール「Rspamd」の導入
OpenDKIM インストール
# yum install opendkim (略) Installed: opendkim.x86_64 0:2.11.0-0.1.el7 Dependency Installed: libbsd.x86_64 0:0.8.3-1.el7 libevent.x86_64 0:2.0.21-4.el7 libmemcached.x86_64 0:1.0.16-5.el7 libopendkim.x86_64 0:2.11.0-0.1.el7 opendbx.x86_64 0:1.4.6-6.el7 sendmail-milter.x86_64 0:8.14.7-5.el7 Complete!
↑OpenDKIMがインストールされました。
OpenDKIM設定
複数ドメインで、複数のカギを管理します。
サンプルとして、「example.com」と「example.net」を例とします。
# mkdir /etc/opendkim/keys/example.com/ # mkdir /etc/opendkim/keys/example.net/
↑ドメイン毎のディレクトリを作成
# opendkim-genkey -d example.com -s 20190519 -D /etc/opendkim/keys/example.com/ # opendkim-genkey -d example.net -s 20190520 -D /etc/opendkim/keys/example.net/
↑キーを作成します。
「20190519」のセレクタは、YYYYMMDDなどと(年月日)、付けることが多いようです・・・
/etc/opendkim/keys/example.com/
の下には、
20190519.private
20190519.txt
という2つのファイルができていると思います。
同様に
/etc/opendkim/keys/example.net/
にも同じようなファイルが生成されている事を確認します。
# chown -R opendkim.opendkim /etc/opendkim/keys/
↑ユーザを変更します。
# vi /etc/sysconfig/opendkim AUTOCREATE_DKIM_KEYS=NO
↑上記、1行を加える。
vi /etc/opendkim.conf --------------------------- Mode v ↓ Mode sv sign & verify (s) 署名と (v) 検証 --------------------------- KeyFile /etc/opendkim/keys/default.private ↓ # KeyFile /etc/opendkim/keys/default.private (KeyTableを使うので、ここは、コメントに) --------------------------- # KeyTable /etc/opendkim/KeyTable ↓ KeyTable /etc/opendkim/KeyTable (秘密鍵の場所を保存するファイル) --------------------------- # SigningTable refile:/etc/opendkim/SigningTable ↓ SigningTable refile:/etc/opendkim/SigningTable チェックするドメインを指定するファイル --------------------------- # ExternalIgnoreList refile:/etc/opendkim/TrustedHosts ↓ ExternalIgnoreList refile:/etc/opendkim/TrustedHosts --------------------------- # InternalHosts refile:/etc/opendkim/TrustedHosts ↓ InternalHosts refile:/etc/opendkim/TrustedHosts MTAのサーバーを指定する
# vi /etc/opendkim/KeyTable 20190519._domainkey.example.com example.com:20190519:/etc/opendkim/keys/example.com/20190519.private 20190520._domainkey.example.net example.net:20190520:/etc/opendkim/keys/example.net/20190520.private
vi /etc/opendkim/SigningTable *@example.com 20190519._domainkey.example.com *@example.net 20190520._domainkey.example.net
該当ドメインのDNSを変更します
# cat /etc/opendkim/keys/example.com/20190519.txt 20190519._domainkey IN TXT ( "v=DKIM1; k=rsa; " "p=(長い英数字)" )
上記の2行を、「example.com」のTXTレコードとして追加をします。
# cat /etc/opendkim/keys/example.net/20190520.txt 20190520._domainkey IN TXT ( "v=DKIM1; k=rsa; " "p=(長い英数字)" )
同様に「example.net」もTXTレコードを追加します。
Postfixの設定
# vi /etc/postfix/main.cf smtpd_milters = inet:127.0.0.1:8891 non_smtpd_milters = $smtpd_milters milter_default_action = accept
↑3行を追加します。
# systemctl stop postfix # systemctl start postfix
↑Postfixを再起動します。
OpenDKIMを起動(および、自動起動)
# systemctl start opendkim # systemctl status opendkim
OpenDKIMテスト
example.netのメールアドレスから、
から
@yahoo.co.jp
宛てに送ってみる
Authentication-Results: (yahoo側ホスト名) from=example.net; domainkeys=neutral (no sig); dkim=pass (ok); header.i=@example.net
dkim=pass
となり、OKとなる。