qmailバウンスメール ダブルバウンスメール
No:196 Time[2008-10-28 06:54:31]
qmailバウンスメール ダブルバウンスメール

今回なぜqmailがすごい勢いで回転しだしたので、思考錯誤して勉強したこと。
それまでメールにはまり興味なかったけどもかなり勉強になりました。
フィルターの勉強にもなったしね。
とりあえず、ダブルバウンス対策

まず、ダブルバウンスはqmailのバグみたいなものですので、パッチをあてないとうごきませんからqmail
をportsから入れ替えましょう。


cd /usr/ports/mail/qmail-tls
make install clean

x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x
x x[X] SMTP_AUTH_PATCH Provide SMTP Authentication x x
x x[ ] qmailQUEUE_PATCH run a qmailQUEUE program x x
x x[ ] BIG_TODO_PATCH enable big_todo qmail patch x x
x x[ ] BIG_CONCURRENCY_PATCH use a concurrency greater than 240 x x
x x[ ] OUTGOINGIP_PATCH set the IP address to send messages x x
x x[X] LOCALTIME_PATCH emit dates in the local timezone x x
x x[ ] QMTPC_PATCH send email using qmtp protocol x x
x x[ ] MAILDIRQUOTA_PATCH Maildir++ support x x
x x[ ] BLOCKEXEC_PATCH block many windows viruses/worms x x
x x[x] DISCBOUNCES_PATCH discard double-bounces x x
x x[ ] SPF_PATCH Implement SPF checker x x
x x[ ] EXTTODO_PATCH extern high-perform. todo processing x x
x x[ ] TLS_DEBUG enable additional debug information x x
x x[ ] QEXTRA enable QUEUE_EXTRA copy feature x x
x x[ ] RCDLINK create rc.d/qmail.sh x x
tqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj

下記のようにダブルバウンスにチェックを入れてください。
もし一度でもすでに入れたことがある場合は

make configででてきます。

あとは
touch /var/qmail/control/doublebounceto
するだけです。
次にバウンスメールもついでに
vi /var/qmail/alias/.qmail-default
#

#だけ入れてください。

これでバウンスもダブルバウンスも無効になります。
これで再起動でもすればとまるはずですが、とまらなければ
バウンスもきてるでしょうけどそれは、spamの踏み台になっている可能性が高いです。
まず最初に
vi rc.localで
/usr/local/bin/tcpserver -HR -u 82 -g 81 -x /etc/tcp.smtp.cdb 0 smtp /var/qmail/bin/qmail-smtpd mail.XXXX.XXX /usr/local/bin/cmd5checkpw /usr/bin/true 2>&1 | /var/qmail/bin/splogger smtpsd &
みたいなところを削除して、再起動してみたください。ああ、
ただし、キューがたまっていたら、削除しないと前のが残っていてわかりませんから、

qmHandleを

http://qmhandle.sourceforge.net/
から入手してインストしてください。これはperlスクリプトできから簡単です。
qmHandle -D
で削除できます。

なお、私も今回qmailのtlsがfreebsd7.0と思われる原因でうまくできなかったので、試行錯誤しているうちに、穴を作ってしまったらしく2日ほど踏み台にされました。
まずは停止してみてこなくなるようなら、それは設定をミスッてます。
まさか踏み台にそれてるとはおもわず、バウンスメールがいっぱいくるのでそのせいだと思いました。
おかけでフィルターの設定をしたりして対処していましたが、ありえないほどのアクセスが世界中からありました。
そうですね、設置20分くらいでqが溜まりはじめました。
あの人たちははっきりいってあほです。
spam率はシンガポール、台湾がダントツです。次に中国ですかね。
結構tlsによる設定がバージョンがあがっていて今それのせいで混乱しがちなのでみなさんも気をつけてくださいね。
私は古いのを使うことにします。




あ、このままではね、メールの受信もできなくなりますよ

vi rc.localで
/usr/local/bin/tcpserver -HR -u 82 -g 81 -x /etc/tcp.smtp.cdb 0 smtp /var/qmail/bin/qmail-smtpd &

とします。
ちなみに、なんで/var/qmail/bin/splogger smtpsd&も消したかというと、
これログとるつもりで入れてるんですよ、ネットのいろんな文献でものってるから
入れてる人多いとおもうけど、これあると、受信はできるのに、エラーメールまで届くよってことになります。どうやらパスかなんか仕様が変わったんですかね。
まあ、ころころパスとか設定かえるのやめてください。
めんどくさいから。文献コピペ管理者が多い昨今、さあこまったお手上げ、セキュリティホールですよ!本かっても記事古いし!まあ私のようにね。。。。


そんでですねーー、あなたのサーバーが外部からのメールちゃんとブロックしてるか不安。テストできるサイトでみてもよくわからんし!というあなた!
はい、私ですが。まんまとspamの踏み台になった感想としては、今の世の中spamの踏み台になるように開放していたらきっと一時間以内にHDがとてつもない勢いで周ります。
そしたらすかさず、netstat -n してください。ローカル側が25番から相手側1024番以上にたいして激しくメールされてれば間違いありません。それはspamの踏み台になっています。なんだか私今回の経験で恥ずかしながらしったんですけど、MTAって25番同士で接続するわけでないんですね。送信するときは25番からいては1024番以上の適当です。

www# netstat
Active Internet connections
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp4 0 128 ns1.smtp 189-47-170-203.d.14364 ESTABLISHED
tcp4 0 28 ns1.smtp 200.167.3.66.48373 ESTABLISHED
tcp4 0 0 ns1.smtp 222.240.254.203.2678 ESTABLISHED
tcp4 0 0 ns1.smtp 200.167.3.66.47123 ESTABLISHED
tcp4 0 0 ns1.smtp 200.167.3.66.28369 ESTABLISHED
tcp4 0 22 ns1.smtp 200.167.3.66.50025 FIN_WAIT_1

こんな感じです。
これは、制限かけた今でもセッションをはられてるということです。
ただし、これで実際のメールを送っているかといったらそうではありません。
メールはセッション確立後、メールの送信許可してよと頼みにきます。
がすぐに嫌だよと断りますだから。/var/qmail/bin/qmail-qstat
しても、qがたまっていくことはありません。
しかし、一度スパムを許すとこうやってセッションをはり許可を求めつづけられるので
サーバーには負荷になります。セッションには限界数があるわけですからこれがひどく
なるとパンクするわけです。
だからその前にひどいとこはフィルターをかけて拒否するとセッション自体はられません。
というふうに私は理解しました。