トップ «前の日記(2009-07-30(Thu)) 最新 次の日記(2009-08-01(Sat))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2009-07-31(Fri) 比較的涼しく晴れた

Wireshark の filter

メールサーバに仕掛けたtcpdumpのログを読み込んで睨めっこ。
ログを採るときに -c オプションで数を限定する(パケット500で13本ほど採れた)。
それにしても25/tcpに限定しても、 まだ多すぎる。さらに上のプロトコルで絞ってやらないと。

まずはPostfixの smtpd_helo_restrictions でSPAMを蹴る可能性を検討する。
smtp.req.command == "EHLO"||smtp.req.command == "HELO" などとやってみる (もちょっと短くできんものか)。 案の定、SPAMっぽいものは、名乗りからして下×だ。

soft_bounce

デフォルトは"no"。

postfix/smtpd[2395]: NOQUEUE: reject: RCPT from $REMOTE: \
 554 5.7.1 <$AC2>: Relay access denied; from=<$AC1> to=<$AC2> \
 proto=ESMTP helo=$HELO

"yes"に変えてみる。

postfix/smtpd[2298]: NOQUEUE: reject: RCPT from $REMOTE: \
 454 4.7.1 <$AC2>: Relay access denied; from=<$AC1> to=<$AC2> \
 proto=SMTP helo=$HELO

smtpd_helo_restrictions

Postfix に {helo,ehlo} したときの文字列をチェックさせる。
ただし、実際に跳ねるのは、現在の設定では rcpt to の後だった。

renect_invalid_hostname を入れると、"hoge..hoge" などが跳ねられた。

postfix/smtpd[2703]: NOQUEUE: reject: RCPT from \
 $REMOTE : 401 4.5.2 <hoge..hoge>: Helo command rejected: \
 Invalid name; from=<$AC1> to=<$AC2> proto=ESMTP \
  helo=<hoge..hoge>

reject_non_fqdn_hostname を入れると、FQDNでないように見える 名前などが跳ねられた。

postfix/smtpd[2318]: NOQUEUE: reject: RCPT from \
 $REMOTE: 404 4.5.2 <$NON_FQDN>: Helo command rejected: \
 need fully-qualified hostname; from=<$AC1> to=<$AC2> \
 proto=ESMTP helo=<$NON_FQDN>

reject_unknown_hostname を入れると、DNSで引けない名前などが跳ねられた。

postfix/smtpd[2796]: NOQUEUE: reject: RCPT from \
 $REMOTE: 450 4.7.1 $UNKNOWN: Helo command rejected: \
 Host not found; from=<$AC1> to=<$AC2> proto=ESMTP \
 helo=<$UNKNOWN>

リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。