メール設定 · 1 min read · Sep 27, 2025
Postfixでdkim-milter 2.8.xを使用して複数のドメインのDKIMを設定する (CentOS 5.3)
Postfixでdkim-milter 2.8.xを使用して複数のドメインのDKIMを設定する (CentOS 5.3)
はじめに
DomainKeys Identified Mail (DKIM) インターネット標準は、メール送信者がメッセージにデジタル署名を行うことを可能にし、受信者がそのメッセージが改ざんされていないことを確認できるようにします。DKIM送信者認証スキームは、メッセージの受信者がメッセージが送信者のドメインから発信されたことを確認し、メッセージの内容が変更されていないことを確認できるようにします。暗号技術に基づくソリューションであるDKIMは、企業に対して比較的低い実装コストでメール詐欺を軽減し、組織のブランドと評判を保護するための業界標準の方法を提供します。DKIMの基本仕様は、Sendmail, Inc.がCiscoおよびYahoo!と共同で推進しています。
このチュートリアルは、CentOS 5.2でのPostfixにおけるDKIMの設定チュートリアルと私の個人的な経験に基づいています。この設定があなたにとって機能することを保証するものではありません!
インストール
Topdogソフトウェアは、Dkim-milterのCentos rpmを提供しています。http://www.topdog-software.com/oss/dkim-milter から最新バージョンをインストールします。この記事執筆時点での最新バージョンはdkim-milter-2.8.3-1です。
dkim-milter rpmをインストールします(32bitおよび64bit intelに対応)
wget http://www.topdog-software.com/oss/dkim-milter/dkim-milter-2.8.3-1.i386.rpm
rpm -ivh dkim-milter-2.8.3-1.i386.rpmキーの生成
/usr/bin/dkim-genkey -r -d mydomain1.commydomain1.comを、メールに署名するドメイン名に置き換えます。このコマンドは、2つのファイルを作成します。
default.txt - DNSを介して公開する公開鍵を含みます
default.private - メールに署名するために使用する秘密鍵です
秘密鍵の名前を変更し、dkim-milterのキーのディレクトリに移動して保護します。
mv default.private default
mkdir /etc/mail/dkim/keys/mydomain1.com
mv default /etc/mail/dkim/keys/mydomain1.com
chmod 600 /etc/mail/dkim/keys/mydomain1.com/default
chown dkim-milt.dkim-milt /etc/mail/dkim/keys/mydomain1.com/default重要な注意: 他のドメインについてもこれらの手順を繰り返し、各ドメインには上記のように別々のフォルダを使用してください。そうしないと、「dkim: FAILED, invalid (public key: not available)」というエラーメッセージが表示されます。
DNSの設定
公開鍵をDNSを介して公開する必要があります。クライアントサーバーはこの鍵を使用して、署名されたメールを検証します。default.txtの内容は、ゾーンファイルに追加する必要がある行で、サンプルは以下の通りです。
default._domainkey IN TXT "v=DKIM1; g=*; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDG81CNNVOlWwfhENOZEnJKNlikTB3Dnb5kUC8/zvht/S8SQnx+YgZ/KG7KOus0By8cIDDvwn3ElVRVQ6Jhz/HcvPU5DXCAC5owLBf/gX5tvAnjF1vSL8ZBetxquVHyJQpMFH3VW37m/mxPTGmDL+zJVW+CKpUcI8BJD03iW2l1CwIDAQAB"
; ----- mydomain1.comのDKIMデフォルト
これもゾーンファイルに追加します。
_ssp._domainkey IN TXT "t=y; dkim=unknown"設定
/etc/dkim-filter.confファイルを確認する必要があります。
vi /etc/dkim-filter.conf次のようになっている必要があります。
ADSPDiscard yes
ADSPNoSuchDomain yes
AllowSHA1Only no
AlwaysAddARHeader no
AutoRestart yes
AutoRestartRate 10/1h
BaseDirectory /var/run/dkim-milter
Canonicalization simple/simple
Domain mydomain1.com #ここにすべてのドメインを追加し、カンマで区切ります
ExternalIgnoreList /etc/mail/dkim/trusted-hosts
InternalHosts /etc/mail/dkim/trusted-hosts
KeyList /etc/mail/dkim/keylist
LocalADSP /etc/mail/dkim/local-adsp-rules
Mode sv
MTA MSA
On-Default reject
On-BadSignature reject
On-DNSError tempfail
On-InternalError accept
On-NoSignature accept
On-Security discard
PidFile /var/run/dkim-milter/dkim-milter.pid
QueryCache yes
RemoveOldSignatures yes
Selector default
SignatureAlgorithm rsa-sha1
Socket inet:20209@localhost
Syslog yes
SyslogSuccess yes
TemporaryDirectory /var/tmp
UMask 022
UserID dkim-milt:dkim-milt
X-Header yes/etc/mail/dkim/keylistファイルを確認します。
vi /etc/mail/dkim/keylist次のようになっている必要があります。
*@mydomain1.com:mydomain1.com:/etc/mail/dkim/keys/mydomain1.com/default注意: 他のドメインがある場合は、このファイルに追加する必要があります。1行につき1つのドメインです。
Postfixの設定
milterを使用できるようにするために、postfixのmain.cfファイルに次のオプションを追加する必要があります。
vi /etc/postfix/main.cfsmtpd_milters = inet:localhost:20209
non_smtpd_milters = inet:localhost:20209
milter_protocol = 2
milter_default_action = accept他のmilterがすでに設定されている場合は、既存のmilterにdkim-milterオプションを追加します。
dkim-milterを起動し、postfixを再起動します。
service dkim-milter start
service postfix restartテスト
[email protected]または[email protected]にメールを送信すると、設定が正しく機能しているかどうかの応答が返されます。
更新
更新されたrpmは常にhttp://www.topdog-software.com/oss/dkim-milterで提供されています。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。