■経緯
やっとレーザー管等が到着したので、組み立てようと、大学に戻って研究室で組み立てしていると、研究室サーバーマシン(Mac mini)のファンが猛烈に鳴りだしました。
なんだろうな?と思い見てみるとxmlrpc.phpに大量のアクセスがありました。調べてみるとWordPressのピンバック攻撃らしくプラグインの導入やApacheの設定などが報告されていました。
とりあえずそれらはやったものの応答するため処理の負荷は変わりません。
そこでファイアーウォールをいれないと。。。とiptablesの設定をしようと調べてみたところMacは違うとか。
もう21時は過ぎていたので終バスを気にしながらipfwやらpfやらの設定方法を勉強しつつ。。。ダメだよこれ。。。icefloorというソフトを入れて回避できるかと思えばやはりipfwやpfの設定について知識がないとダメということがわかり即アンインストール。さらに調べてみるとMurusというソフトウェアがいいことを知りインストールしたところで時間切れ。
終電に乗りながらリモートでMurusの設定をしてみたのですが、結局、無料版では個別のIPを除外する機能が使えないことがわかりました。さらに間違えてファイアーウォールを始動してしまいアクセスできない。。。その日は終了になったわけです。で、その後、自宅のMacにMurusのBasic版を購入して($10)いろいろ試した結果、ある程度の設定はできたので、翌日に土曜出勤して以下の設定をしてみました、という話です。
ちなみにMurusの設定方法については下記のサイトにいろいろと書かれていたのですが、どうやらサーバーではなくクライアントPCでの設定のようで、自分で試行錯誤する必要がありました。
以下、とりあえず僕の操作ログです。いつものように備忘録も兼ねて。
■本題
DoS攻撃を受けていることが発覚して攻撃元のIPがわかっていて、それをブロックしたいときの設定です。
起動直後の画面で、以下の赤枠を選択しました。
その後、左上のを押すと、サービスやグループのメニューが表示されます。
そこでブロックしたいIPアドレスを登録するグループを作成します。blocked-hostsというグループにいれればいいのかといろいろ試行錯誤したのですがなぜか効きませんでした。よくわかりません。
追加したグループアイコンのルーペアイコンを押して以下を入力します。IPアドレスがドメイン名の指定ができます。
続いて、遮断したいサービスを追加します。このとき下向き三角を押しておくことです。Inbounds(外部→サーバー)の設定をするためです。逆にサーバーから外部への遮断ルールを設定したいときはOutbounds(上向きの三角)を押します。この説明でわかるでしょうか?今回はWeb(80と443)なのでそれを追加したのが以下です。
そしてWEBアイコンのルーペアイコンを押して、遮断グループにDoSのIPリストを追加します。
ちなみにこの設定をするとさきほどのWEBのアイコンが緑から黄色にかわります。これは一部を遮断していることを表しています。この辺はMurusのチュートリアル動画を見て学び?ました。以下がその様子です。
設定が終わったら、右上のSTARTボタンを押します。うまく起動できたら画面上のFDマークで設定情報を保存しておきます。
そしてサーバーを再起動してもこの設定が実行されるように、以下のメニューを選択して実行しておきます。
その他、以下を押すと各種設定ができます。特に遮断ログをみたいときなどに使うといいみたいです。
ログは上の画像中にあるように/var/log/PFfirewall.logにあります。ログローテイトもしてくれるという親切設計です。
昨晩、とりあえず一時対応で403を返すようにしたせいか、今回ブロックしたIPからの攻撃は鳴り止みました。。。
とりあえず勉強になりました。