squid が spam の踏み台になった

一昔前は、グローバルIPを持った回線やサーバを買うコストの問題で、専有サーバを持つのは一苦労だった。しかし最近では、特にVPSサーバが普及するようになってからは、レンタルサーバではなく、専有のサーバを借りることもすっかり珍しくなくなってきた。

VPSによりサーバを持つことのコストが劇的に下がったため、本来であったらサーバ運用も出来ない、そもそも運用で必要なことを理解していないレベルの人が持つようになってしまったため、知らない内に犯罪に加担してしまっている事例が増えているように感じる。

先日知り合いから、「あなたのVPSサーバがspam送信の踏み台になっている。一週間以内に何とかしないとサーバ落とすよ」とVPS運営会社から言われたので助けて欲しい、という連絡があった。昔はクラックされたサーバの調査や再設定などを良くやっていたけど、最近は久しく見ていない。ちょっとワクワクしながらサーバにログインして状況を確認してみる。

spamの踏み台になっているということなので、まずは/var/log/maillog を調べてみたけど、特に不審な点は見あたらなかった。踏み台になっているという連絡があった以上、踏み台になっていること自体は間違いないとは思うけど、状況が良くわからない。

いったんその IPアドレスを RBL で引いてみると・・・出るわ出るわ。あちこちの RBL に登録されまくっていた。これで、少なくとも踏み台になっていた証拠はつかめた。ps で見ても特に不振なプロセスは動いていな・・・! なぜか squid が動いている。

squid のアクセスログを見てみると、もの凄いサイズ。次に netstat してみると、外部の SMTP サーバへのコネクションがある。squid の設定を確認するとアクセス制限がまったくかかっておらず、いわゆる「オープンプロキシ」になっていた。これが犯人だ!

tcp 0 0 192.168.1.1:46708 199.236.32.56:25 ESTABLISHED 607/squid

実際にやったことはないけど、確かに接続先を 25 にすれば、spam を送ることも原理的に可能だ。知り合いに聞いてみると、「過去に実験用として squid を立ち上げた記憶がある。ただ、実験が終わったあとには確実に停止したので、再度起動している理由がわからない」らしかった。

とにかく、squid の停止とアンインストールをして、RBL に delist の申請を行った。その後、特に連絡もないし RBL からも削除されたようなので、事態は収束したようだ。その時はなぜ squid が起動していたのか不明だったけど、その後どうやら、VPS の母艦サーバがハードウェア障害で落ちたため、ゲスト OS にもリブートがかかったらしい。squid が自動起動になっていたので、その時に起動してしまっていた。運用会社から障害報告の連絡がなかったので、再起動したことにまったく思い当たらなかったと。

VPSになってサーバを持つ敷居が下がったのは素晴らしいことだけど、あまり運用に関する知識が無い層の人達も、VPSを持つようになってきてしまった。Heroku や Google App Engine あるいは Windows Azure のような PaaS は、オートスケールなど、どちらかというとプロユースを想定したものになっている。従来であればレンタルサーバを使っていた層を吸収してくれる PaaS は(PaaS に当たらない物を勝手に PaaS と呼んでいる場合を除いて)今の所は思い当たらない。

「安価で使いたいときだけ起動して使う」といったカジュアル利用を目的とした PaaS サービスが出てこないだろうか。それが他社との差別化に繋がるかどうかはわからないけど、使わないときには落とすという習慣により、結果として知らないうちに加害者になっているという状況は改善するように思える。というか、踏み台になってうちに spam を送りまくるサーバは全部落ちて欲しい。