OpenDKIM インストール。
~]# dnf --enablerepo=epel install opendkim opendkim-tools
/etc/opendkim/keys/ にキーペア(秘密鍵/公開鍵)の情報ファイルを作成。
~]# opendkim-genkey -D /etc/opendkim/keys/ -d wave440.com
ファイルの所有権を設定。
~]# chown opendkim:opendkim /etc/opendkim -R
公開鍵情報ファイルの内容を確認。
~]# cat /etc/opendkim/keys/default.txt default._domainkey IN TXT ( "v=DKIM1; k=rsa; " "p=公開鍵データ" ) ; ----- DKIM key default for wave440.com
DNSサーバ(外部向け正引きゾーンデータベース)に DKIM で利用する2つのレコード(公開鍵レコードと ADSP レコード)及び DMARC レコードを登録。
~]# vi /var/named/wave440.com.db.wan
最終行へ追加(公開鍵レコードは、上記 default.txt の内容をそのままコピペで O.K.)。
なお、外部向け正引きゾーンデータベースファイルの Serial 値も更新する。
default._domainkey IN TXT ( "v=DKIM1; k=rsa; " "p=公開鍵データ" ) ; ----- DKIM key default for wave440.com _adsp._domainkey.wave440.com. IN TXT "dkim=unkown" _dmarc.wave440.com. IN TXT "v=DMARC1; p=none; rua=mailto:dmarc-rua@wave440.com"
DMARC ポリシー設定
p=<none|quarantine|reject>
| ポリシー | 意味 | 用途の目安 |
|---|---|---|
| none | 何もしない(監視のみ) | 導入・調査フェーズ |
| quarantine | 迷惑メール扱い(隔離) | 問題が少ないと確認できた段階 |
| reject | 受信拒否 | 運用が安定し、なりすましを厳格に防ぎたい時 |
設定反映。
~]# rndc reload wave440.com
postfix を opendkim グループに所属させる。
~]# usermod -a -G opendkim postfix
opendkim.conf の設定。
~]# vi /etc/opendkim.conf
変更と削除。
・・・ ・・・ ## Selects operating modes. Valid modes are s (sign) and v (verify). Default is v. ## Must be changed to s (sign only) or sv (sign and verify) in order to sign outgoing ## messages. Mode v ↓↓↓ Mode sv ・・・ ・・・ ## Create a socket through which your MTA can communicate. #Socket inet:8891@localhost Socket local:/run/opendkim/opendkim.sock ・・・ ・・・ ## Add a DKIM-Filter header field to messages passing through this filter ## to identify messages it has processed. SoftwareHeader yes ↓↓↓ SoftwareHeader no ・・・ ・・・ ## Domain(s) whose mail should be signed by this filter. Mail from other domains will ## be verified rather than being signed. Uncomment and use your domain name. ## This parameter is not required if a SigningTable is in use. # Domain example.com ↓↓↓ Domain wave440.com ・・・ ・・・ ## Identifies a set of "external" hosts that may send mail through the server as one ## of the signing domains without credentials as such. # ExternalIgnoreList refile:/etc/opendkim/TrustedHosts ## Identifies a set "internal" hosts whose mail should be signed rather than verified. # InternalHosts refile:/etc/opendkim/TrustedHosts ・・・ ・・・
TrustedHosts ファイル確認。
~]# cat /etc/opendkim/TrustedHosts # OPENDKIM TRUSTED HOSTS # To use this file, uncomment the #ExternalIgnoreList and/or the #InternalHosts # option in /etc/opendkim.conf then restart OpenDKIM. Additional hosts # may be added on separate lines (IP addresses, hostnames, or CIDR ranges). # The localhost IP (127.0.0.1) should always be the first entry in this file. 127.0.0.1 ::1 #host.example.com #192.168.1.0/24
OpenDKIM の起動と自動起動設定。
~]# systemctl enable --now opendkim
SMTP接続時にDKIMと連携するパラメータ設定を追記。
~]# vi /etc/postfix/main.cf
最終行へ追加。
# DKIM連携の設定 smtpd_milters = unix:/run/opendkim/opendkim.sock non_smtpd_milters = unix:/run/opendkim/opendkim.sock milter_default_action = accept
Postfix 再起動。
~]# systemctl restart postfix
確認のため Gmail 等にメール送信してみる。
Gmail の例(メッセージのソースを表示)。
↓↓↓