さくらVPSでWeb+POP+SMTPサーバーを運用しているのですが、突然サーバーから応答が無くなってしまいました。

とりあえず再起動して復旧したのですが、secureログに下記ような認証のログが大量に残されていました。

Jan 22 01:33:36 www****u dovecot-auth: pam_unix(dovecot:auth): check pass; user unknown
Jan 22 01:33:36 www****u dovecot-auth: pam_unix(dovecot:auth): authentication failure; logname= uid=0 euid=0 tty=dovecot ruser= rhost=::ffff:***.***.***.***
Jan 22 01:33:36 www****u dovecot-auth: pam_succeed_if(dovecot:auth): error retrieving information about user test
※一部伏せ字にしています

認証に成功しているわけではないと思うのですが、大量のアクセスでCPUリソースが消費されてサーバーダウンという結果になったのではないかと想像しています。
SSHで同様のことがあった場合にはポート番号を変更したりして回避すると思うのですが、POPに関しては何か対策があるものでしょうか。何か対策がございましたらお教えいただけますと幸いです。

以上、よろしくお願いいたします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2012/01/23 09:46:42
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:phase-d No.1

回答回数91ベストアンサー獲得回数3

ポイント100pt

一時対応としては、そのIPアドレスからのアクセスをiptablesで叩き落とします。
最低限でも110番(POP3overSSLなら995番)、面倒ならポート番号問わず落としますね。

iptables -A INPUT -s xx.xx.xx.xx -p tcp --dport 110 -j DROP

その上でdovecotを再起動すれば、リソースは回復するのではないでしょうか。

複数のIPアドレスから攻撃が来ててイタチごっこになってしまう場合は逆で、iptablesでデフォルト拒否にした上で、必要なIPアドレスのみ110or995へのアクセスを許可する、というのはどうでしょう?


dovecot.confで
listen = xxx
ssl_listen = xxx
のようなパラメータを変更すればポート変更はできますが、ユーザビリティを考えるとちょっと微妙なところですね。

他1件のコメントを見る
id:phase-d

こんなのを発見しましたが、原理的には一緒ですかね。
http://news.trippyboy.com/serversmanvps/dovecot%E8%AA%8D%E8%A8%BC%E3%82%A2%E3%82%BF%E3%83%83%E3%82%AF%E3%82%92%E3%80%8Cswatch%E3%80%8D%E3%81%A7%E5%9B%9E%E9%81%BF%E3%81%AE%E5%B7%BBserversmanvps/

あとは
login_process_per_connection
のパラメータをいじると、リソース消費は抑えられるかもしれません。
その前後の認証プロセス系のパラメータをいじるのはありかもしれませんが、攻撃を受けてることには変わらないですね。

http://blog.trippyboy.com/mail/dovecot%E8%AA%8D%E8%A8%BC%E3%82%A2%E3%82%BF%E3%83%83%E3%82%AF%E3%81%AB%E3%82%88%E3%82%8B%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E4%B9%B1%E7%AB%8B%E3%82%92%E3%81%95/
http://www.dovecot.jp/dovecot.conf


ちなみに個人的に同じくさくらのVPSでPOP3+SMTPサーバを運用してるんですが、POP3overSSLだからなのか、あまりPOP3への攻撃は来ていません。22とか23へは結構あるんですけどね。

2012/01/23 00:02:47
id:nihimoto

お教えいただきありがとうございます。なるほど、幾つか対抗手段があるのですね。POP3 over SSLも検討してみたいと思います。
大変参考になりました、ありがとうございます!

2012/01/23 09:45:30

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません