presents by IT Consulting 109

OpenDKIM – 送信元ドメイン認証

概要

迷惑メール対策としてDKIMを設定する手順について記載しています。

DKIM (Domainkeys Identified Mail)
DKIMは、電子署名方式の送信ドメイン認証である。IETFにおいてSendmail社のEric Allman氏らを中心として検討が進められ、RFC 4871およびRFC 5672として標準化された。さらに、DKIMの規格を補うDKIM-ADSPという標準があり、RFC 5617で標準化されている。

 

手順

epel-releaseをインストール

yum install epel-release

実行結果

 

opendkimをインストール

yum install --enablerepo=epel opendkim

実行結果

 

鍵を格納するディレクトリを作成

mkdir /etc/opendkim/keys/example.com

実行結果

 

鍵の作成

opendkim-genkey -h rsa-sha256 -D /etc/opendkim/keys/example.com -d example.com -s hoge

実行結果


所有者を変更

chown -R opendkim: /etc/opendkim/keys/example.com/

実行結果

 

DNSのレコードを確認

cat /etc/opendkim/keys/example/hoge.txt

実行結果 ※サンプル

hoge._domainkey      IN      TXT     ( "v=DKIM1; h=rsa-sha256; k=rsa; "
          "p=MIGfMAN0GCSqBCGADAGSIb3DUgQDAA4QEQBCBiQK5/ZqB5wX5vv/FJFfvfK9uDBlhZ31NK5ETZC1VYRHu6Ij3iq1Un1C7a8JJF7wOCSuq+uXWePKN5mPz3iXFOGuPad/cqZJGSvFZ9S5dzLpCepEN28wbZH+QIDAQABpXYMPuaIkiPoE3NHQqmAxAzxaKkGHMQQdCxA74Gn7lvINayETWc6i" )  ; ----- DKIM key hoge for dayspay.example.com
設定ファイルの編集①
sudo vi /etc/sysconfig/opendkim

編集箇所

*修正

Mode v
↓
Mode sv

*修正

SoftwareHeader        yes
↓
SoftwareHeader        no

*修正

Domain        example.com
↓
Domain        example.com

*修正

KeyFile      /etc/opendkim/keys/default.private
↓
# KeyFile      /etc/opendkim/keys/default.private

*修正

# 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

 

設定ファイルの編集②

sudo vi /etc/opendkim/KeyTable

編集箇所

*追加

hoge._domainkey.example.com example.com:hoge:/etc/opendkim/keys/example.com/hoge.private

 

設定ファイルの編集③

/etc/opendkim/SigningTabl

編集箇所

*追加

*@example.com hoge._domainkey.example.com

 

postfixの追加設定

sudo vi /etc/postfix/main.cf

編集箇所

*追加

# DKIM
smtpd_milters = inet:127.0.0.1:8891
non_smtpd_milters = $smtpd_milters
milter_default_action = accept

 

opendkimの自動起動設定

systemctl enable opendkim

opendkimの起動

systemctl start opendkim

postfixの再起動

systemctl restart postfix

 

補足

DNSへの登録は次の値となる。 ※サンプル

hoge._domainkey.example.com IN TXT "v=DKIM1; h=rsa-sha256; k=rsa; "p=MIGfMAN0GCSqBCGADAGSIb3DUgQDAA4QEQBCBiQK5/ZqB5wX5vv/FJFfvfK9uDBlhZ31NK5ETZC1VYRHu6Ij3iq1Un1C7a8JJF7wOCSuq+uXWePKN5mPz3iXFOGuPad/cqZJGSvFZ9S5dzLpCepEN28wbZH+QIDAQABpXYMPuaIkiPoE3NHQqmAxAzxaKkGHMQQdCxA74Gn7lvINayETWc6i"

DKIMが機能しているか確認する方法としては、Gmail等に送信してみてソースからDKIMがPASSになっていれば正常となります。

この記事を書いた人
名前:TRUE's。 千葉県育ち、神奈川県在住のIT系フリーエンジニア。 IT系のナレッジサイトを不定期で更新中。 フォトグラファー兼エンジニアとして日々勤しんでいる。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です