fail2banしてやる!

お疲れ様です。國分です。

勉強会準備でいっぱいいっぱいですのが、

「今週のブログは……?」という編集さんからの催促は

クララオンラインの監視サービスのように規則正しく行われます。

ポート監視は大切ですので、皆さま、監視サービスをご利用ください。

 

では今回は、そんな ストレスフルな環境に有効なストレス解消法をお伝えしたいと思います。

 

 

今回の記事の目次

  • fail2banストレス解消法
  • 公開サーバが狙われるとこうなる
  • fail2banとは
  • fail2banを設定してみる
  • fail2ban設定結果

 

 

 

 

fail2ban ストレス解消法

 

後回しにしてきた仕事を地道こなしていると、

差出人:nyaowncloud_Fails2Banから、こんなメールを受信します。

 

20141117113233

 

…………引っ掛かってる、引っ掛かってる 😆

このメールを受信するたびに、にやりとしています。

 

このメールが何かというと、

私が検証用に設置しているnyaownCloud用サーバに対する

sshポート接続への辞書式攻撃Banしたよー

という通知メールです。

 

Ban=禁止する、差し止める という意味です。

制汗スプレーなどで有名ですね。言葉の意味は同じです。

 

ストレスフルな社会には、こんなささやかな楽しみが必要……違います、

外部公開しているサーバには、このような防御が必要なのです。

 

 

 

 

 公開サーバが狙われるとこうなる

 

sshで接続して作業するため22番ポートを開放していると、

sshログはこんな状況になります。

 

cat /var/log/secure

 

サーバを公開してわずか数時間で、218.2.0.133というIPアドレスを持つどなたかが、

サーバに設定されているパスワードのぜい弱性について試験して下さっていました。

秒単位での攻撃です。とても機械的!

 

どなたですかー?とwhois情報検索。

 

20141117120942

 

クララオンラインも中国に支社がありますが、

彼らにはサーバを設置したことを伝えておりません。

中国の見知らぬどなたかテストしてくださっているようです。ありがたいことです。

ならば、こちらも負けてはいられません。

 

 

 

 

 

fail2banとは

 

サーバに記録され、蓄積されているログをチェックして、

フィルター項目が指定回数を見つけたら「ban」するよ!

というシンプルなソフトウェアです。
WordpressやMovable Typeをはじめ、

Devocot、postfix、httpd(apache)などの不正アクセスからサーバを守るため、

使用されています。

 

 

 

 

 

 

fail2banを設定してみる

 

 1、fail2banをyumインストール

CentOS6 ではepelレポジトリにあります。

 

素直にyumしてみると、こうなりました。

 

epel リポジトリのミラー https://mirrors.fedoraproject.org/ の証明書をアップデートすると直るそうなので、

を行ったところ、yumでダウンロードできました。

 

 

from epel: [Errno 256]は

の組み合わせでも直る場合があるようです。

 

 

2、fail2banの設定ファイルを追加・修正

/etc/fail2ban/jail.conf

 

こんな感じの表記がずらーっと続きます。787行あります。わかりにくいですね。

今回はsshへの接続を制限したいので、94行目以降見ていきたいと思います。

 

デフォルトの設定はこちら。これを

 

こんな感じにします。

 

sshdはデフォルトで有効になっている( enabled=true 96行目)なので、

修正したのは99行目のメールアドレスと101行目のリトライ回数、

追加した設定は102行目のbantimeのみです。

 

jail.conf  設定できる内容は下記の通りとなっています。

加えたい条件があれば適宜変更してみましょう。

 

enabled  有効/無効設定
filter  フィルタ
action   maxretry回数となった後の動作
logpath   監視対象のログのファイルパス
maxretry  ban対象とするfail回数
bantime   フィルターされたアクセスを弾き続ける時間(秒)
findtime   検出に使う時間
ignoreip  除外IP(ホワイトリスト)

こんな感じにします。

 

 

3、起動&自動起動

設定後、fail2banを起動して、自動起動の設定もしておきます。

 

 

4、ログをsyslogとは別に設定

fail2banを設定しても、攻撃は容赦なかったりします。

 

 

fail2banのログはSYSLOGがデフォルトとなっており、こんな風にfail2banログばかりになってしまいます。

ですので、別のディレクトリを作成し、そちらにfail2banのログを貯めましょう。

 

・fail2banログ用のディレクトリを作成

 

・/etc/fail2ban/fail2ban.conf の 33行目 logtargetを変更

 

fail2ban.confを変更した場合は、サービスをリスタートしてください。

 

 

 

 

 

 fail2ban設定結果

ではメールを確認してみましょう。

「218.2.0.133」さんはいらしてるでしょうか?

 

20141117153301

 

いらっしゃったみたいですね。

無料でぜい弱性テストをしてくださるなんて、ありがたいことです。

 

 

 

 

 

 

終わりに

今回、fail2banを設定してみましたが、

検証用のぽっと出の公開サーバですら、海外からこんなに狙われているのだなと実感しました。

 

このようなシンプルな対策でも、不正アクセスを防御・検知できますので、

皆さまも公開サーバに設定してみてはいかがでしょうか。

 

では、今回はこの辺で。

Share on LinkedIn
LINEで送る
Pocket

吉村

吉村

クララオンライン グローバルビジネスストラテジー部でマーケティング担当として働いています。 クラウド関連技術と中国関連の情報をお届けしてます。 たまに DJ とかします。日本語RAPが大好きです。