タグ「DKIM」が付けられているもの


DKIMのエラーは、自分のチョンボ

エラーが出続けていたDKIM関連。
某所で質問してみたところ、「dkim-filterパッケージの削除し忘れてたり、dkim-filterが動いてたりしません?」って指摘を頂いたので、早速チェックしたみたところ…。
まさに指摘されたとおりの状況…。orz

"aptitude"でdkim-filterパッケージ削除して、

(データベースを読み込んでいます ... 現在 128556 個のファイルとディレクトリがインストールされています。)
dkim-filter を削除しています ...
Stopping DKIM Filter: dkim-filter.
dkim-filter の設定ファイルを削除しています ...
dpkg: 警告: dkim-filter の削除中、ディレクトリ '/var/run/dkim-filter' が空でないため削除できませんでした。
man-db のトリガを処理しています ...
先に進むには Return を押してください。

起動していなかったopendkimを起動して

nexus01:~# /etc/init.d/opendkim status
[FAIL] opendkim is not running ... failed!
nexus01:~# /etc/init.d/opendkim start
Starting OpenDKIM: opendkim.

gmailから自分とこ宛てにメールを送ってみたところ、エラーが出なくなりました。

以前、

このあと、gmailからメールを投げてエラーが出てないことを確認できたら、dkim-milterを削除しておしまいとなります。

[From dkim-milter から opendkim に切り替えてみる | Linux - Soukaku's HENA-CHOKO Blog]

って書いていたにも関わらず、すっかり忘れていたというオチでした…。
お恥ずかしいやら、情けないやら…。
#きっとパッケージの削除を忘れんで、Niagaraの設定でサーバの再起動した時に、dkim-filterが起動しちゃったんだな…。

opendkim でもエラーは、出続けてるんだよな

とりあえず、opendkimに入れ替えた以降、From:がgmail.comなメールが受信できない、というのは無くなったようなのだけど、ログをチェックしてみると、やっぱり"bad signature"ということで、エラーは出続けている模様。

Apr  3 00:05:02 nexus01 opendkim[10125]: B76D9BC2: s=20120113 d=gmail.com SSL error:04091068:rsa routines:INT_RSA_VERIFY:bad signature
Apr  3 00:05:02 nexus01 opendkim[10125]: B76D9BC2: bad signature data

dkim-milterだと、エラー即一時的配送拒否になっていたのだから、状況は改善しているのだけどね...。
でもこれって、やっぱりGoogle側だよなぁ、原因は...。

dkim-milter から opendkim に切り替えてみる

ダウングレードしてみたり、再び最新パッケージに戻してみたり、と足掻いているにも関わらず、一向に改善される気配のない、gmail.comカラのメール受信ができない件。
ようやくというか、海外でも似たような事例が出てきたようで、その流れの中で「opendkimをに切り替えてみては?」というアドバイスが出ていたので、試して見ることにした。
#OpenDKIMは、dkim-milterからforkしたプロジェクト、ということらしい。

dkim-filterをダウングレードしてみた

Googleのプロダクトフォーラムにも書いたのだけど、返信もつかないし、ググっても自分の書いたエントリーが一番上に来てしまうという状況で一向に状況が改善しない。

という感じで、DKIMの署名検証に失敗していて、そのせいで家のサーバが一時的な受取拒否状態になってる。

[From Gmailからのメールが受け取れないんだが | Network - Soukaku's HENA-CHOKO Blog]

とりあえず、dkim-filterのパッケージをダウングレードしてみて様子を見てみているのだけど、ダウングレードすると発生しないような感じなので、パッケージ側の問題なのかなぁ、とも思ったり...。

aptitudeでdkim-filterをダウングレード
dpkg: 警告: dkim-filter を 2.8.2.dfsg-1.1 から 2.8.2.dfsg-1 にダウングレードしています。
(データベースを読み込んでいます ... 現在 134029 個のファイルとディレクトリがインストールされています。)
dkim-filter 2.8.2.dfsg-1.1 を (.../dkim-filter_2.8.2.dfsg-1_amd64.deb で) 置換するための準備をしています ...
Stopping DKIM Filter: dkim-filter.
dkim-filter を展開し、置換しています...
man-db のトリガを処理しています ...
dkim-filter (2.8.2.dfsg-1) を設定しています ...
Starting DKIM Filter: dkim-filter.
先に進む場合は Return を押してください。

少なくとも、"2.8.2.dfsg-1"にしておくと、問題はないようなので、このまま様子見かなぁ...。

Gmailからのメールが受け取れないんだが

最近気がついたのだけど、Gmailから自分のトコ宛にメールを出すと、

ar  6 22:46:08 nexus01 postfix/smtpd[6313]: 4E99F84C: client=mail-vw0-f48.google.com[209.85.212.48]
Mar  6 22:46:08 nexus01 postgrey[3654]: 4E99F84C: action=pass, reason=client whitelist, client_name=mail-vw0-f48.google.com, client_address=209.85.212.48, sender=soukaku@gmail.com, recipient=soukaku@downtown.jp
Mar  6 22:46:08 nexus01 postfix/cleanup[4664]: 4E99F84C: message-id=
Mar  6 22:46:08 nexus01 dkim-filter[2639]: 4E99F84C: dkim_eoh(): internal error from libdkim: ar_addquery() for `20120113._domainkey.gmail.com' failed
Mar  6 22:46:08 nexus01 postfix/cleanup[4664]: 4E99F84C: milter-reject: END-OF-MESSAGE from mail-vw0-f48.google.com[209.85.212.48]: 4.7.1 Service unavailable - try again later; from= to= proto=ESMTP helo=

という感じで、DKIMの署名検証に失敗していて、そのせいで家のサーバが一時的な受取拒否状態になってる。

自分んトコ → Gmail については問題ないし、Gmailから以外のメールについても問題は無いので、なんでなんでしょうねぇ、と...。

dkim-filterでエラーのつづき

dkim-filterで"key retrieval failed"というエラーが相変わらず出続け、ごく一部のメールが受け取れないという状況だった件、

うちのところではamazon.co.jpがこれで引っかかっていたのですが、DNSで当該keyを引いてみるとNXDOMAIN,つまり、メールに署名しておきながらそのPublic-keyをDNSで公開していないといった状況になっていました。
dkim-filterはデフォルトでDNSのエラーはtempfail扱いになっているので、相手が状況を改善するか、受け側で accept設定しない限り受け取れないことになります。

dkim-filterの"key retrieval failed"対応、再び - Soukaku's HENA-CHOKO Blog

というコメントを戴いたので、ちょっと設定を弄ってみた。
#ちなみにウチで、エラーが出ていたのはIIJからのメール、と思っていたら、コメント主と同じamazon.co.jpのメールも一時配送拒否になってた・・・。

/etc/dkim-filter.confの最後に

On-DNSError accept

と、書き加えて、dkim-filterを再起動。
しばらく待っていたら、相手からメールが配送されてきました。

当面、これで様子見だなぁ〜。

dkim-filterでエラー

いつもつらつらと流ししながら眺めている、mail.infoに

Apr 10 01:31:54 eswat2 dkim-filter[19937]: 9B5B372186: key retrieval failed

というのがあることに、気づいた。
なんだろうなぁ、と思いつつ、そのまままた眺めていたら、どうも特定の送信元からのメールを受信しようとする時に出てきていることに気づいたので、"key retrieval failed"をキーにしてmail.infoにgrepしてみると結構の件数、しかも予想どおり特定の送信元からのメールだった場合に出てきている。
しかも、よくよくチェックしてみると、失敗するのは特定のメールサーバだけだな〜。

とりあえず、放置しておこう。とりあえず、メールこなくて困る相手じゃない(メーリングリストサービスの配送サーバの1台らしい)ので。

dkim-filterをインストール

メール送信者の正当性を確認するための技術であるDKIMが、IETFに正式に承認されたというので、うちのサーバでも対応させてみました。

ITmedia エンタープライズ:送信ドメイン認証「DKIM」、IETFが承認:
DKIMはドメインレベルでメールに署名、その署名を検証するシステム。メールの受信側が署名の部分からドメイン名を特定、暗号化技術を使って署名を検証する。迷惑メールやスパム、フィッシング対策として有力視されている規格だ。

Debianなので、必要なソフトのインストールは、

aptitude install dkim-filter

で、OKなのだけど、設定でちょっとハマった・・・。