sid-milterのパッチ

TrueImageのサポートのメールが届かなかったので,調べてみると,ここのメールは,Senderフィールドが空になっていた。

困ったもんだ。dk-milterやdkim-milterは,ヘッダ異常と判断したようだが,sid-milterは,途中でメール異常となったようだ。

Jul  7 13:14:27 localhost dk-filter[1]: (unknown-jobid): can't parse From: headerJul  7 13:14:27 localhost dk-filter[2]: (unknown-jobid): can't parse From: headerJul  7 13:14:27 localhost sid-filter[3]: WARNING: sendmail symbol 'i' not availableJul  7 13:14:27 localhost sid-filter[3]: <unknown-msgid> can't determine responsible domain from `'Jul  7 13:14:27 localhost postfix/cleanup[4]: 0: milter-reject: END-OF-MESSAGE from watcher.proton.co.jp[192.168.1.1]: 5.7.1 can't identify domain in `'; from=<us@example.co.jp> to=<sample@example.org> proto=SMTP helo=<example.com>

sid-filterの-aオプションでpeerlistを指定したが,peerlistが有効にならなかった。

(続きを読む…)

SenderID-Milterで,Amazonのメールの判定がおかしい。

Authentication-Results: mail.aritia.org from=order-update@amazon.co.jp; sender-id=permerror; spf=permerror

amazon.co.jpからのメールが,permerror(不正なメール送信元)となる。

DNSを確認したところ,特に問題ないように見える。

# host -t txt amazon.co.jp
amazon.co.jp descriptive text “v=spf1 include:amazon.com ~all”
amazon.co.jp descriptive text “spf2.0/pra include:amazon.com ~all”
# host -t txt amazon.com
;; Truncated, retrying in TCP mode.
amazon.com descriptive text “spf2.0/pra ip4:207.171.160.0/19 ip4:87.238.80.0/21 ip4:72.21.193.0/24 ip4:72.21.197.0/24  ip4:72.21.196.0/24 ip4:72.21.208.0/24 ip4:72.21.209.0/24 ip4:194.154.193.200/28 ip4:194.7.41.152/28 ~all”
amazon.com descriptive text “v=spf1 ip4:207.171.160.0/19 ip4:87.238.80.0/21 ip4:72.21.193.0/24 ip4:72.21.197.0/24  ip4:72.21.196.0/24 ip4:72.21.208.0/24 ip4:72.21.209.0/24 ip4:194.154.193.200/28 ip4:194.7.41.152/28 ~all”

既に,調査している方がいらっしゃいました。(どさにっき)
sid-milterの不良と判断なさっているようです。たぶん,そうなんでしょう。しかし,sid-milterは,長いこと放置されているようで,パッチが出そうもないですし,かといって,自分でパッチを作る余裕もなし。

まあ,AMAZONのメールだけ,spfのチェックを外すことにした。

(続きを読む…)

CentOS5: Clamav-milterの設定

Postfix 2.5.0から,Clamav-milterを使うため,少し弄ってみたら,Clamav-milterのバージョンアップで設定が戻って,動かなくなっていた。

postfix/smtpd[11814]: warning: connect to Milter service unix:/var/run/clamav-milter/clamav.sock: Permission denied

unixドメインソケットを無理に使おうとしたのが悪いのかな。INETドメインのソケットを素直に使えば良かったな。

(続きを読む…)

CentOS5: logwatchの修正

postfixのログでUnmatchがあったので,修正した。

ベースは,Fedora8 配布のlogwatch-7.3.6に,以下の修正を行った

RPMも作ってみた。

dk-milter: トラブル

DomainKeyから,DKIMに移行されるとか解説があったけど,DKIMの署名はGmailからのものしか見たことがない。Domainkeyは,GMailで相変わらず署名されているし,YahooやNiftyで使われている。まだ,Domainkeyが主流なのかな。もっとも,SPFの方が普及しているように見える。

Domainkeyを使うために,dk-milterのベターユースは何かと試行錯誤しているのだが,いろいろとトラブルが発生する。

今回は,メール転送で発生した。

milter-reject: END-OF-MESSAGE from localhost[127.0.0.1]: 4.7.1 Service unavailable – try again later; from=<example@example.org> to=<user@example.com>

 

あるメールだけ,rejectされる。このメール1通だけ。dk-milterを停止されて,このメールだけ転送後,dk-milterを再度起動させてみて,同じようなメールを送付しても再現しない。メールヘッダを見ているのだが,原因はわからない。うまくいっているケースとの違いがわからない。

 

(続きを読む…)

dk-milter: -H オプション

dk-filterの-Hオプション:

Includes on DomainKey signatures the list of headers that were included in the signature.  This makes the signature header larger by explicitly listing the  included  headers, but this also allows verifying agents to ignore headers that were added in transit.

意訳:

Domainkeyの署名に,署名に含めたヘッダのリストを含めます。明示的に署名したヘッダのリストを追加することで,Domainkeyの署名ヘッダが大きくなりますが,これによって,認証エージェントが通信時に追加になったヘッダを無視できるようになり,署名されたヘッダのみ証明できるようになります。

で,試してみたら,Gmail/Yahooとも有効。(当然,CHECK-AUTH@VERIFIER.PORT25.COM, sa-test@sendmail.net でも問題なし)

-Hオプションを付けていれば,clamav-milterで,–noxheaderオプションを付ける必要はないようだ。

もっとも,送信側が,ヘッダリストを追加しているとは限らないので,clamav-milterの順番はsmtpd_miltersのリストの最後に置かないと,Domainkeyの署名チェックで,常にfailになる。

(続きを読む…)

Milterの組み合わせ順序

clamav-milterも組み込んでみた。clamav-milterは,CentOS5のRPMがあるので,楽でよいのだが,smtpd_miltersの最後に置いたら,Domainkeyの認証がエラーになった。

 

Clamav-milterは,特に,ヘッダに追加が無いので問題ないと思っていたんだが。dk-milterの前に置いたら,Domainkeyはpassした。どこかに影響があるのだろうな。

clamav-milterの起動オプションで,-n(–noxheader)を付けるのを忘れていたためだった。

オプションを色々と試しているうちに,付けない状態にしたらしい。このオプションを付けない,デフォルトだと”X-Virus-Scanned:”と”X-Virus-Status:”のヘッダが追加され,DomainKeyのシグネチャから違う状態になってしまう。

 

このオプションを付けてやれば,問題なく,dk-milterと一緒に使うことができた。

CentOS5で,DKIM/SPF/Domainkeyなど使ってみる

最新のPostfixでは,Milterがサポートされ,DKIMとか簡単に設定できそうだ,と思い立ったのが,始まりなんだが,よくわからなくなってきた。実装例や運用例が異なっていたりするのは,まだ,標準的な運用が成立していないせいだからだろう。RedHatで標準のパッケージに含められるようになれば,設定ツールも揃ってくるだろうけど,まだ,発展途上なんだろう。

仕方なく,自分で試してみた。(参考サイト)

  1. CentOS5の添付のPostfixのバージョンが,2.2.3で,Milterをサポートしていないので,2.4.4のPostfixを作る。
    Milterを使わない方法もあるが,将来は,Milterが標準になるだろうという期待から,今から覚えておいてみたかったから。設定は,2.2のものをそのまま使えたので,別に苦労はしなかった。
    postfix-2.4.6-11.i386.rpm , postfix-debuginfo-2.4.6-11.i386.rpm , postfix-pflogsumm-2.4.6-11.i386.rpm , postfix-2.4.6-11.src.rpm
  2. まずは,DKIMをインストールをしようと,src.rpmを探す。(http://blackbean.org/review/dkim-milter-2.4.0-1.fc8.src.rpm
    )。最新のDKIMは,2.4.2と知り,SPECファイルをいじる。
    参考サイトの見ながら,直しているうちに,ソケットはUNIXドメインの方が性能的に良いし,セキュリティ上も安心だと思い始め,このSPECファイルに不満を持ち始める。で,直す。
    dkim-milter-2.4.2-2.i386.rpm  , dkim-milter-debuginfo-2.4.2-2.i386.rpm , dkim-milter-2.4.2-2.src.rpm
  3. DKIMだけで良いと思っていたが,ついでにDomainkeyのMilterも試したくなる。(dk-milter-0.6.0-1.src.rpm)
    ユーザ名が気に入らない,UNIXドメインが使いたいという気分がわき起こり,ついつい,SPECファイルまでいじり始める。
    dk-milter-0.6.0-2.i386.rpm , dk-milter-debuginfo-0.6.0-2.i386.rpm , dk-milter-0.6.0-2.src.rpm
  4. src.rpmを探している中で,SenderIDのsrc.rpmも見つける。(sid-milter-0.2.14-1.src.rpm)
    勢いに任せて,SPECファイルを弄り始める。
    sid-milter-0.2.14-2.i386.rpm ,  sid-milter-debuginfo-0.2.14-2.i386.rpm , sid-milter-0.2.14-2.src.rpm
  5. SPFとDKIMとDomainkeyの設定を行う
  6. check-auth@verifier.port25.com へのメールpass
    sa-test@sendmail.net へのメール pass
    http://senderid.espcoalition.org/ へのメール。SPFは,passだが,DomeinKey/DKIMは,NG。設定が悪いのかな。

一部,おかしいところがあるかもしれない。もっと良く調べないといけないな。

(続きを読む…)