Soukaku's HENA-CHOKO Blog

Linux

なんで、そこでRSETを2発送るのかが理解出来ないんだが…

ココ何日か、客先のメールサーバでログを見ていて、ちょっと気になるのがあった。

下は、postfixのログから、一部切り出したものなのだけど…。

May  2 10:32:11 imx01 postfix/smtpd[18313]: connect from unknown[172.16.101.131]May  2 10:32:11 imx01 postfix/smtpd[18313]: 8F698D34C0F: client=unknown[172.16.101.131]May  2 10:32:11 imx01 postfix/smtpd[18313]: C6B0DD34C0F: client=unknown[172.16.101.131]May  2 10:32:11 imx01 postfix/cleanup[21110]: C6B0DD34C0F: message-id=<A9B8C2FDF47D4D8F88751F407F10D0DD@WHIRO03PC>May  2 10:32:11 imx01 postfix/qmgr[13432]: C6B0DD34C0F: from=<hoge@mail.example.com>, size=1579, nrcpt=1 (queue active)May  2 10:32:12 imx01 postfix/smtpd[18313]: disconnect from unknown[172.16.101.131]May  2 10:32:12 imx01 postfix/smtp[20978]: C6B0DD34C0F: to=<fuga@mail.example.com>, relay=10.10.10.25[10.10.10.25]:25, delay=0.22, delays=0.08/0/0.06/0.08, dsn=2.0.0, status=sent (250 Ok: queued as EA2F33DA41)May  2 10:32:12 imx01 postfix/qmgr[13432]: C6B0DD34C0F: removed

一見普通に見えるけど、キューID ”8F698D34C0F”に相当する送信ログが見当たらないのですよ。勿論、キューIDでログに対するgrepを実行した上で、「無い」って言うことなんですけどね。
別にWARNINGやERRORというメッセージも出てないし、メールの送信が出来ないというわけでもないのだけど、ナニカガオカシイ。

フツーにとっているログだけではよくわからないし、ある程度こういう形でログが残るクライアントも特定出来る状況だったので、

debug_peer_list = 172.16.101.131

を/etc/potfix/main.cfに追加して、postfixをリロード。
これで、設定したクライアント"172.16.101.131"からの接続があれば、そのときのSMTPセッションの詳細がログに出るので、待つこと数時間…。

Squidでv4アクセス優先を強制する

IPv6関連の話が(一部で)盛り上がってきてるし、実際にIPv6アドレスでのアクセスが出来るWebサイトもちらほら出てきているんだけど、なぜかIPv4/IPv6のデュアルスタックなWebサーバなはずなのに、IPv6だとアクセスに失敗するサイトが、ちらほらとあるのがわかってきた。
どっちかというと、Webサイト側の問題であることが多いのだけど、Squidでアクセス先がIPv4/IPv6デュアルスタックであっても、v4でのアクセスを優先するように出来るので、備忘録的にメモ。

LHR-4BREFU3 をLinuxで使ってみる 〜モノフェローズ〜

16120-630-270612

LHR-4BREFU3 に関するレビューの3本目。
メーカが保証する使い方ではないけど、LinuxをインストールしたPCで使えるか、試してみたので、その結果を書いてみる。

MacにしてもWindowsにしても、ドライバ無しで使えるという点から考えて、「ハード的に認識してくれたら使えるんじゃね?」と思ったので、試しにサーバにUSB経由で繋いで、/var/log/syslogを見てみたら...。

Apr  1 15:01:48 nexus01 kernel: [3700805.252009] usb 2-3: new high-speed USB device number 9 using ehci_hcdApr  1 15:01:48 nexus01 kernel: [3700805.385354] usb 2-3: New USB device found, idVendor=0789, idProduct=017eApr  1 15:01:48 nexus01 kernel: [3700805.385358] usb 2-3: New USB device strings: Mfr=10, Product=11, SerialNumber=3Apr  1 15:01:48 nexus01 kernel: [3700805.385360] usb 2-3: Product: LHR USB DeviceApr  1 15:01:48 nexus01 kernel: [3700805.385362] usb 2-3: Manufacturer: LogitecApr  1 15:01:48 nexus01 kernel: [3700805.385364] usb 2-3: SerialNumber: 0000000000000002Apr  1 15:01:48 nexus01 kernel: [3700805.388057] scsi12 : usb-storage 2-3:1.0Apr  1 15:01:49 nexus01 kernel: [3700806.392554] scsi 12:0:0:0: Direct-Access     HzW RAID 5                     PQ: 0 ANSI: 5Apr  1 15:01:49 nexus01 kernel: [3700806.393538] sd 12:0:0:0: [sdb] Very big device. Trying to use READ CAPACITY(16).Apr  1 15:01:49 nexus01 kernel: [3700806.393911] sd 12:0:0:0: [sdb] 5860294656 512-byte logical blocks: (3.00 TB/2.72 TiB)Apr  1 15:01:49 nexus01 kernel: [3700806.394659] sd 12:0:0:0: [sdb] Write Protect is offApr  1 15:01:49 nexus01 kernel: [3700806.394662] sd 12:0:0:0: [sdb] Mode Sense: 28 00 00 00Apr  1 15:01:49 nexus01 kernel: [3700806.395412] sd 12:0:0:0: [sdb] No Caching mode page presentApr  1 15:01:49 nexus01 kernel: [3700806.396687] sd 12:0:0:0: [sdb] Assuming drive cache: write throughApr  1 15:01:49 nexus01 kernel: [3700806.398783] sd 12:0:0:0: [sdb] Very big device. Trying to use READ CAPACITY(16).Apr  1 15:01:49 nexus01 kernel: [3700806.400661] sd 12:0:0:0: [sdb] No Caching mode page presentApr  1 15:01:49 nexus01 kernel: [3700806.401917] sd 12:0:0:0: [sdb] Assuming drive cache: write throughApr  1 15:01:49 nexus01 kernel: [3700806.509951]  sdb: sdb1 sdb2Apr  1 15:01:49 nexus01 kernel: [3700806.510913] sd 12:0:0:0: [sdb] Very big device. Trying to use READ CAPACITY(16).Apr  1 15:01:49 nexus01 kernel: [3700806.512793] sd 12:0:0:0: [sdb] No Caching mode page presentApr  1 15:01:49 nexus01 kernel: [3700806.514050] sd 12:0:0:0: [sdb] Assuming drive cache: write throughApr  1 15:01:49 nexus01 kernel: [3700806.515438] sd 12:0:0:0: [sdb] Attached SCSI disk

あっさり、認識されてるよ!

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 signatureApr  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.jpMar  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' failedMar  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から以外のメールについても問題は無いので、なんでなんでしょうねぇ、と...。

proxy.pac を書いてみた

今まであんまりチェックしていなかったのだけど、Webブラウザのプロキシ設定を自動的に行なってくれるという、proxy.pacを自宅内でも用意してみた。
詳しい書式は、下記を参照のこと。

うちの環境用に準備したのは、次の通り。

nexus01:~# more /var/www/proxy.pacfunction FindProxyForURL(url,host) {	if (isInNet(host, "172.16.0.0", "255.255.255.0") || dnsDomainIs(host, ".local.downtown.jp"))		return "DIRECT;"	else	if (isInNet(host, "218.219.149.232", "255.255.255.248") || dnsDomainIs(host, ".downtown.jp"))		return "DIRECT;"	else		return "PROXY proxy.local.downtown.jp:3128; DIRECT";}

内部ネットワークと自分のところに割り当てられているグローバルIPにあるサーバについては、ダイレクトにアクセスするように書いたのだけど、もしかしたら2つある"if (isInNet(host, 〜"のところは1行でいいかもしれない。
あとは、最後に使わせたいプロキシサーバとそのポート、そのプロキシサーバが使えない状態でもアクセスできるように"DIRECT"と書いておく。こうしておくとWebブラウザ側が状況に応じて切り替えてくれるみたい。

で、このファイルを"http://172.16.0.254/proxy.pac"といった形でアクセス出来るように配置すれば準備完了。
このへんはWebサーバのログでチェックしてもいいですな。実際のログはこんな感じで出てくる。

172.16.0.101 - - [23/Feb/2012:23:35:38 +0900] "GET /proxy.pac HTTP/1.1" 200 532 "-" "Evernote/221382 CFNetwork/520.3.2 Darwin/11.3.0 (x86_64) (Macmini4%2C1)"172.16.0.101 - - [23/Feb/2012:23:35:57 +0900] "GET /proxy.pac HTTP/1.1" 200 532 "-" "WebProcess/7534.54.12 CFNetwork/520.3.2 Darwin/11.3.0 (x86_64) (Macmini4%2C1)"172.16.0.101 - - [23/Feb/2012:23:35:57 +0900] "GET /proxy.pac HTTP/1.1" 200 532 "-" "Safari/7534.54.12 CFNetwork/520.3.2 Darwin/11.3.0 (x86_64) (Macmini4%2C1)"172.16.0.101 - - [23/Feb/2012:23:36:56 +0900] "GET /proxy.pac HTTP/1.1" 200 506 "-" "Safari/7534.54.12 CFNetwork/520.3.2 Darwin/11.3.0 (x86_64) (Macmini4%2C1)"172.16.0.101 - - [23/Feb/2012:23:36:57 +0900] "GET /proxy.pac HTTP/1.1" 200 506 "-" "WebProcess/7534.54.12 CFNetwork/520.3.2 Darwin/11.3.0 (x86_64) (Macmini4%2C1)"

ソフトによっては、ネットワークにアクセスに行くたびに、proxy.pacを読み込んでいるみたい。

実運用では、proxy.pacの配置場所を、ローカルネットワークだけにアクセス許可するような設定を、Webサーバにしておく必要はあるかもしれないので、そのあたりはそれぞれの事情に合わせて、ということで。

ドライバは入手出来たけど、まだ動かず...

多分、ネットワークをバイパスする部分をソフトウェア的に設定変えてやらんといけないじゃないかという線が濃厚です。

[From 【人柱】バイパス機能付きのNICを手に入れてみた、が... | Hardware - Soukaku's HENA-CHOKO Blog]

ということで、色々と探し回ったけど、「ドライバ類がやっぱりメーカに頼まなくちゃいけないのかなぁ〜」という流れになって、メーカサイトにある登録フォームで登録をしてみたら、日本の代理店からメールが来たでざるよ。

ピックアップ

このページの上部へ