MTA/AntiSPAM/Sendmail への Domain Keys 実装
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
#contents
----
[[DomainKeys についてはこちら"DomainKeysって何?
* 1. 必要なシステム構成 [#t7e86945]
DomainKeys の利用にあたり sendmail が 8.13.0 以上かつ L...
LIBMILTER の実装が終わったら、いよいよ dk-milter のセッ...
* 2. dk-milter のセットアップ [#a2710719]
さて、sendmail の MILTER 対応を確認したら、いよいよ Dom...
DomainKeys 機能を使うためには [[sendmail.net:http://www...
** 2-1. dk-milter って何?? [#i26950a8]
dk-milter は DomainKeys の機能を sendmail に実装するも...
** 3-2. dk-milter のダウンロード [#wd98efae]
[[SourceForge:http://sourceforge.net/projects/dk-milter...
ページ半ばにある【 Latest File Releases 】にある【 Down...
今日現在のバージョンは 0.3.0 です。ピンク色で色が付いて...
$ cd /usr/local/src
$ wget http://jaist.dl.sourceforge.net/sourceforge/dk-mi...
** 2-3. dk-milter のセットアップ [#f0c17b28]
既に sid-milter のセットアップをしたことがあれば、ほと...
2-2 項でファイルをダウンロードしたら、アーカイブを展開...
$ tar xfz dk-milter-0.3.0.tar.gz
$ cd dk-milter-0.3.0
次に libmilter.a の場所を確認しておきます。標準では /us...
$ vi dk-filter/Makefile.m4
ファイルを開いて、24 行目の confLIBDIRS のパスを必要に...
dnl APPENDDEF(`confLIBDIRS', `-L/usr/local/sendmail/lib')
こちらを
APPENDDEF(`confLIBDIRS', `-L/usr/lib')
このように書き換えておきます。(特に必要なければ記述は...
ここで dk-milter をコンパイルします。
$ ./Build
# su
# ./Build install
正常にコンパイルされていれば /usr/bin/dk-filter にファ...
# ls -l /usr/bin/dk-filter
-r-xr-xr-x 1 bin bin 165059 Jun 28 18:10 ...
** 2-4. sendmail.mc の編集と sendmail.cf 再構築 [#l3f423cb]
sid-milter を sendmail が参照でいるように sendmail.cf ...
sendmail.cf を書き換えるためには、元となる sendmail.m4 ...
# cp -p sendmail.cf sendmail.cf.org
# cp -p sendmail.m4 sendmail.m4.org
sendmail.mc ファイルを開きます。
# vi /etc/mail/sendmail.mc
ファイルを開いたら末尾に
INPUT_MAIL_FILTER(`dk-filter', `S=inet:8892@localhost')
このような記述を追加します。
なお、dk-filter と sid-filter は共存できます。ポート番...
保存後、sendmail.cf を M4 マクロを使って生成します。
# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
(具体的には sendmail.cf に「O InputMailFilters=sid-filt...
* 3. dk-milter の運用 [#c40f2609]
** 3-1. 秘密鍵の設置 [#af9ac9ce]
dk-filter のテスト確認は sid-filter より行程が増えます。
DomainKeys の設定がまだでしたら、gentxt.csh を使うこと...
※アーカイブを展開したディレクトリの中に README があります...
[[公開鍵作成の前に行った秘密鍵:http://pocketstudio.jp/l...
例にならってディレクトリを作成します。
# mkdir /var/db/domainkeys
# cp 秘密鍵.txt /var/db/domainkeys/server.key.pem
あわせてパーミッションも変更し、root 以外は参照できなく...
# chmod 600 -R /var/db/domainkeys
** 3-2. dk-milter の起動とオプション [#v754d0ef]
起動は次のような書式です。
# /usr/bin/dk-filter -l -p ソケットスペック -d ドメイン...
今回は次のように指定してみました。
- -p = inet:8892@localhost
- -d = nsx.pocketstudio.jp
- -s = /var/db/domainkeys/server.key.pem
- -S = betatest (セレクタって何?という場合は[[こちらを参...
# /usr/bin/dk-filter -l -p inet:8892@localhost -d nsx.po...
これで dk-milter が起動します。-l オプションはログの記...
Jun 28 18:33:22 nsx dk-filter[2871]: Sendmail DomainKeys...
starting (args: -l -p inet:8892@localhost -d nsx.pockets...
-s /var/db/domainkeys/server.key.pem -S betatest)
ほかにもセレクタを用いている場合は複数起動します。
※詳しくは man dk-filter
さらに、sendmail の再起動も必要です。SIGHUP を sendmail...
# /etc/rc.d/init.d/sendmail restart
Shutting down sendmail: ...
Starting sendmail: ...
これで OK !、とりあえず。
あとは、実際にメールを送信してみると、ログに次のような...
Jun 28 18:34:17 nsx sendmail[2907]: j5S9YH0W002907: Milt...
header: DomainKey-Signature: a=rsa-sha1; s=betatest; d=n...
c=simple; q=dns;\n\tb=QjFh0HvJ9Y(メール固有の情報・以下...
実際に外部に配送されたメールには、ヘッダ情報に DomainKe...
DomainKey-Signature: a=rsa-sha1; s=betatest; d=nsx.pocke...
c=simple; q=dns; b=QjFh0HvJ9Y(以下メール固有の情報)
** 3-3. dk-filter の自動起動設定 [#kf384623]
サーバ起動時に自動実行されるよう /etc/rc.d/rc.local フ...
# dk-milter
/usr/bin/dk-filter -l -p inet:8892@localhost -d pocketst...
(※運用サーバによって情報は異なります。このまま貼り付けて...
** 3-4. エラー対策 [#s32855e4]
smfi_opensocket() failed
/var/db/domainkeys/server.key.pem: stat(): No such file ...
-s オプションで指定された場所に秘密鍵がありません。パス...
Sendmail DomainKeys Filter: Unable to bind to port xxx A...
Sendmail DomainKeys Filter: Unable to create listening s...
既に dk-filter プロセスが起動しています。一旦プロセスを...
Milter (dk-filter): error connecting to filter: Connecti...
Milter (dk-filter): to error state
dk-filter が異常動作しているか停止しています。この間 Do...
** 3-5 DomainKeys の動作確認 [#dd019d5d]
sa-test@sendmail.net 宛に適当なメールを送ると自動で結果...
Authentication System: Domain Keys
Result: DK signature confirmed GOOD
Description: Signature verified, message...
Reporting host: sendmail.net
More information: http://antispam.yahoo.com/d...
Sendmail milter: http://www.sendmail.net/dk-...
このように【 DK signature confirmed GOOD 】とありますの...
* 4. 実運用時にはどうする? [#y06df058]
正しく DomainKeys 認証されたメールにはヘッダ情報に
Authentication-Results: ホスト名 from=メールアドレス; do...
このように domainkeys=pass(通過)というヘッダ情報が埋め...
正しいメールであるという証拠ですので、たとえば社内のメ...
まだ DomainKeys を導入しているのは、日本国内では殆どな...
* 5. 課題 - 外部からのメール中継(問題解決) [#vc4253df]
%%調査不足なのですが、サーバ内から mail コマンドなどで通...
外部からのメール中継(Relay)の場合でも自動で DomainKeys ...
変更点は sendmail.mc の追加・修正です。
DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
DAEMON_OPTIONS(`Port=587, Name=MSA, M=Ea')dnl
上記2点、ポートについての記述を書き換え sendmail.cf を...
* 6.メモ [#t30661c4]
-[[複数の milter を導入する時は dk-milter を優先させなく...
-[[RedHat系init起動スクリプト:http://sourceforge.net/mail...
終了行:
#contents
----
[[DomainKeys についてはこちら"DomainKeysって何?
* 1. 必要なシステム構成 [#t7e86945]
DomainKeys の利用にあたり sendmail が 8.13.0 以上かつ L...
LIBMILTER の実装が終わったら、いよいよ dk-milter のセッ...
* 2. dk-milter のセットアップ [#a2710719]
さて、sendmail の MILTER 対応を確認したら、いよいよ Dom...
DomainKeys 機能を使うためには [[sendmail.net:http://www...
** 2-1. dk-milter って何?? [#i26950a8]
dk-milter は DomainKeys の機能を sendmail に実装するも...
** 3-2. dk-milter のダウンロード [#wd98efae]
[[SourceForge:http://sourceforge.net/projects/dk-milter...
ページ半ばにある【 Latest File Releases 】にある【 Down...
今日現在のバージョンは 0.3.0 です。ピンク色で色が付いて...
$ cd /usr/local/src
$ wget http://jaist.dl.sourceforge.net/sourceforge/dk-mi...
** 2-3. dk-milter のセットアップ [#f0c17b28]
既に sid-milter のセットアップをしたことがあれば、ほと...
2-2 項でファイルをダウンロードしたら、アーカイブを展開...
$ tar xfz dk-milter-0.3.0.tar.gz
$ cd dk-milter-0.3.0
次に libmilter.a の場所を確認しておきます。標準では /us...
$ vi dk-filter/Makefile.m4
ファイルを開いて、24 行目の confLIBDIRS のパスを必要に...
dnl APPENDDEF(`confLIBDIRS', `-L/usr/local/sendmail/lib')
こちらを
APPENDDEF(`confLIBDIRS', `-L/usr/lib')
このように書き換えておきます。(特に必要なければ記述は...
ここで dk-milter をコンパイルします。
$ ./Build
# su
# ./Build install
正常にコンパイルされていれば /usr/bin/dk-filter にファ...
# ls -l /usr/bin/dk-filter
-r-xr-xr-x 1 bin bin 165059 Jun 28 18:10 ...
** 2-4. sendmail.mc の編集と sendmail.cf 再構築 [#l3f423cb]
sid-milter を sendmail が参照でいるように sendmail.cf ...
sendmail.cf を書き換えるためには、元となる sendmail.m4 ...
# cp -p sendmail.cf sendmail.cf.org
# cp -p sendmail.m4 sendmail.m4.org
sendmail.mc ファイルを開きます。
# vi /etc/mail/sendmail.mc
ファイルを開いたら末尾に
INPUT_MAIL_FILTER(`dk-filter', `S=inet:8892@localhost')
このような記述を追加します。
なお、dk-filter と sid-filter は共存できます。ポート番...
保存後、sendmail.cf を M4 マクロを使って生成します。
# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
(具体的には sendmail.cf に「O InputMailFilters=sid-filt...
* 3. dk-milter の運用 [#c40f2609]
** 3-1. 秘密鍵の設置 [#af9ac9ce]
dk-filter のテスト確認は sid-filter より行程が増えます。
DomainKeys の設定がまだでしたら、gentxt.csh を使うこと...
※アーカイブを展開したディレクトリの中に README があります...
[[公開鍵作成の前に行った秘密鍵:http://pocketstudio.jp/l...
例にならってディレクトリを作成します。
# mkdir /var/db/domainkeys
# cp 秘密鍵.txt /var/db/domainkeys/server.key.pem
あわせてパーミッションも変更し、root 以外は参照できなく...
# chmod 600 -R /var/db/domainkeys
** 3-2. dk-milter の起動とオプション [#v754d0ef]
起動は次のような書式です。
# /usr/bin/dk-filter -l -p ソケットスペック -d ドメイン...
今回は次のように指定してみました。
- -p = inet:8892@localhost
- -d = nsx.pocketstudio.jp
- -s = /var/db/domainkeys/server.key.pem
- -S = betatest (セレクタって何?という場合は[[こちらを参...
# /usr/bin/dk-filter -l -p inet:8892@localhost -d nsx.po...
これで dk-milter が起動します。-l オプションはログの記...
Jun 28 18:33:22 nsx dk-filter[2871]: Sendmail DomainKeys...
starting (args: -l -p inet:8892@localhost -d nsx.pockets...
-s /var/db/domainkeys/server.key.pem -S betatest)
ほかにもセレクタを用いている場合は複数起動します。
※詳しくは man dk-filter
さらに、sendmail の再起動も必要です。SIGHUP を sendmail...
# /etc/rc.d/init.d/sendmail restart
Shutting down sendmail: ...
Starting sendmail: ...
これで OK !、とりあえず。
あとは、実際にメールを送信してみると、ログに次のような...
Jun 28 18:34:17 nsx sendmail[2907]: j5S9YH0W002907: Milt...
header: DomainKey-Signature: a=rsa-sha1; s=betatest; d=n...
c=simple; q=dns;\n\tb=QjFh0HvJ9Y(メール固有の情報・以下...
実際に外部に配送されたメールには、ヘッダ情報に DomainKe...
DomainKey-Signature: a=rsa-sha1; s=betatest; d=nsx.pocke...
c=simple; q=dns; b=QjFh0HvJ9Y(以下メール固有の情報)
** 3-3. dk-filter の自動起動設定 [#kf384623]
サーバ起動時に自動実行されるよう /etc/rc.d/rc.local フ...
# dk-milter
/usr/bin/dk-filter -l -p inet:8892@localhost -d pocketst...
(※運用サーバによって情報は異なります。このまま貼り付けて...
** 3-4. エラー対策 [#s32855e4]
smfi_opensocket() failed
/var/db/domainkeys/server.key.pem: stat(): No such file ...
-s オプションで指定された場所に秘密鍵がありません。パス...
Sendmail DomainKeys Filter: Unable to bind to port xxx A...
Sendmail DomainKeys Filter: Unable to create listening s...
既に dk-filter プロセスが起動しています。一旦プロセスを...
Milter (dk-filter): error connecting to filter: Connecti...
Milter (dk-filter): to error state
dk-filter が異常動作しているか停止しています。この間 Do...
** 3-5 DomainKeys の動作確認 [#dd019d5d]
sa-test@sendmail.net 宛に適当なメールを送ると自動で結果...
Authentication System: Domain Keys
Result: DK signature confirmed GOOD
Description: Signature verified, message...
Reporting host: sendmail.net
More information: http://antispam.yahoo.com/d...
Sendmail milter: http://www.sendmail.net/dk-...
このように【 DK signature confirmed GOOD 】とありますの...
* 4. 実運用時にはどうする? [#y06df058]
正しく DomainKeys 認証されたメールにはヘッダ情報に
Authentication-Results: ホスト名 from=メールアドレス; do...
このように domainkeys=pass(通過)というヘッダ情報が埋め...
正しいメールであるという証拠ですので、たとえば社内のメ...
まだ DomainKeys を導入しているのは、日本国内では殆どな...
* 5. 課題 - 外部からのメール中継(問題解決) [#vc4253df]
%%調査不足なのですが、サーバ内から mail コマンドなどで通...
外部からのメール中継(Relay)の場合でも自動で DomainKeys ...
変更点は sendmail.mc の追加・修正です。
DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
DAEMON_OPTIONS(`Port=587, Name=MSA, M=Ea')dnl
上記2点、ポートについての記述を書き換え sendmail.cf を...
* 6.メモ [#t30661c4]
-[[複数の milter を導入する時は dk-milter を優先させなく...
-[[RedHat系init起動スクリプト:http://sourceforge.net/mail...
ページ名: