加筆修正なんです?これは通常、サーバ上のプログラムからメールを送信する場合、各種ライブラリを使用してsendmailに送信をお願いするような形が多いかと思います。この時、DKIM-Signatureというヘッダ情報をメールに付ける+DNSの追加情報設定を行うことで、迷惑メールでないことをある程度証明できることができ、受信メールサーバ側で迷惑メールとして処理される確率を下げることができます。この特殊なメールヘッダを生成できるのがOpenDKIMというオープソフトウェアになります。OpenDKIMちなみに、"オープンディーキム"と読むらしいです。気をつけたいのは、確実に迷惑メールではないということを証明をするものではなく、あくまでこのメールは正しいドメインからのものですよーというのが分かる程度ですので、メールプロバイダーによっては結局迷惑メールとして処理されてしまうケースもあります。オープンソースなので、やっておくことに越したことはありません。セットアップ環境と注意これから説明する構成は、CentOS6でMTAにPostfixを利用している環境になります。現在のMTAの向き先を確認したい場合、以下のコマンドを実行してください。/usr/sbin/sendmail.postfixが含まれていればOKです。-ステータスは自動です。(略)含まれていなければ、以下コマンドでMTAをPostfixに切り替えてから再度確認してください。保持するか、選択番号を入力します:2ちなみに、後述するサーバ設定を行うことで、Postfixを通した指定のドメインからの送信メールにDKIM-Signatureが自動的に付くようになりますが、細かいサーバ設定が面倒な場合は自前でシグネチャを付けて渡してもOKです。ライブラリがありますが、ここでは詳説しません。該当ドメインのDNS情報に公開鍵情報を設定する必要があります。DNSサービス側で設定できないケースも考えられますので、事前に調査しておく必要があるかもしれません。※尚、以下セットアップは基本的にroot権限での作業手順になります。sudoコマンドを使用する場合は適所読み替えて下さい。OpenDKIMパッケージをインストールOpenDKIMパッケージはEPELリポジトリにあります。先にEPELリポジトリを追加します。追加されている方は結構です。http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpmリポジトリが追加できたらyumコマンドでOpenDKIMをインストールしてください。opendkim尚、dkim-milterというパッケージが見つかる場合もありますが、現在はOpenDKIMが役目を受け継いだようですので、そちらは必要ありません。キーペア作成OpenDKIMパッケージのインストールに成功していれば、キーペア保存用のディレクトリができているのでそこに移動し、ドメインごとのディレクトリを作ります。適用したいメールアドレスのドメインです。ここではsample.comとします。sample.com作成したディレクトリの中でキーペアを生成します。OpenDKIM専用のコマンドがあるのでそれを使います。dkimselector今作成したディレクトリとキーペアをopendkimユーザーの所有に変更します。既存のOpenDKIMの設定ファイルを編集します。以下ハイライトの行の部分を参考に編集してください。refile:/etc/opendkim/TrustedHostsちなみに、55行目でドメインを一つ指定していますが、OpenDKIMは複数のドメインにも対応しています。詳しくは後述する「複数のドメインに対応する」をご参照下さい。KeyTable設定キーテーブルの設定ファイルを編集します。/etc/opendkim/KeyTable以下の行のsample.comの3箇所を正しいものに置き換え、追記して下さい。信頼できるホストを設定します。/etc/opendkim/SigningTable以下の行のsample.comの2箇所を正しいものに置き換え、追記して下さい。53を利用した場合で説明をしますが、ドメインにTXT情報を設定できるDNSサービスならどこでも大丈夫です。ちなみに、他にムームーDNSでも設定ができた実績がありますのでご参考まで。最初のほうで生成したキーペアのうち公開鍵の中身を見ます。/etc/opendkim/keys/sample.com/dkimselector.txtこんな感じになってると思います。↓p=から文字列が実際のキーになります。53に以下の内容でTXTレコードを追加します。format)になったりします。こんな感じでDNSサーバにTXT情報を登録します。53で、送信ポリシーを記述したTXT情報も設定します。"dkim=unknown"ちなみに、上記で指定されているunknownという値はこのドメインから送信されるメールのいくつか、またはすべてに、メール作成者署名が得られるという意味とのこと。詳細は以下サイトをご参考下さい。次にPostfixと連動させるための設定をします。Postfix側の設定ファイルを開き、以下のハイライト行を末尾に追記して下さい。startでOpenDKIMを起動します。以下のような出力があれば問題無いです。不明なホストといった警告が出る場合は、hostnameコマンドで出るホスト名がドメインの形になってない場合です。これは確認してないのですが、特に問題無いような気がしますが、うまくいかない場合は、hostnameの変更をするといいかもしれません。/etc/opendkim/keys.という警告が出る場合もありますが気にしなくてOKです。次に、Postfixも再起動しておきましょう。reloadさらに、サーバスタートアップ時にもOpenDKIMを自動起動するように設定します。on正常に動くか確認mailコマンドでsa-test@sendmail.netにテストメールを送ってみましょう。このメールアドレスは、DKIMやSPFなどの設定が正しくなされているかを、実際にチェックしてその結果を返信してくれる自動サービスです。BADとなっていれば設定失敗となります。DNSの反映を待ってから再度試すといいかもしれません。上記mailコマンドはCentOS6系です。CentOS5系や別のLinuxディストリによってかなり違いますので、以下ご参照下さい。変更する方法まとめOpenDKIMの設定は以上になります。以下からは、2つ目以降のドメインを追加する場合の簡易にまとめた版です。複数のドメインに対応する以下の要領で対応するドメインを追加します。例としてhogehoge.jpとします。dkimselector._domainkey.hogehoge.jpそして、キーの中身を確認して、DNSサービスでTXTレコードを2つ追加します。reloadDNS反映後、テストして完了です。sa-test@sendmail.net以上です。特定商取引法に基づく表記よくある質問お問い合せプレミアム会員サイトマップカザオキラボページ先頭へ。