セキリティ強化「Fail2Ban」導入

ブルートフォースアタックから、我がWebサイトを守り抜け!Fail2Ban導入記🔥

WordPressでブログを始めるには、PHPという魔法の呪文…じゃなくてプログラミング言語が必要不可欠!今回は、サードプレイスから愛を込めて、VPSサーバーにPHPをインストールする方法を、まるでRPGのクエストのようにご紹介します。


ブルートフォースアタックって、一体何フォース?(総当たり攻撃解説)

GPT君も「マジおすすめ!」って言ってた、Fail2Ban。今回は、そんなFail2Banで対策するブルートフォースアタックについて、掘り下げて解説しちゃいます。


ブルートフォースアタック…なにやら強そうな名前ですが、要は「パスワード、全部試したるわ!」っていう、力任せな攻撃方法のこと。日本語では「総当たり攻撃」とも呼ばれています。


例えるなら、宝箱の鍵を一つずつ試していく泥棒みたいなもんですね。地道だけど、意外と成功しちゃうのが怖いところ…


Fail2Ban、君に決めた!どんな活躍をしてくれるの?

「Fail2Ban」は、そんなしつこい泥棒(=ブルートフォースアタック)を撃退してくれる、頼れる用心棒みたいな存在です!


不審なログイン試行を繰り返す輩を見つけると、「こいつ、怪しい!」と判断して、一時的にアクセスを遮断してくれるんです。


これで、あなたのWebサイトは安全…と言いたいところですが、Fail2Banはあくまでも「時間稼ぎ」の役割。油断は禁物ですよ!


Fail2Ban、いざインストール!

さあ、Fail2Banをインストールして、Webサイトを守ってもらいましょう!ターミナルを開いて、以下の呪文…じゃなくてコマンドを入力!


sudo apt-get update
sudo apt-get install fail2ban

これでFail2Banがインストールされます。簡単ですね!


設定ファイルを開いて、Fail2Banをカスタマイズ!

インストールが終わったら、Fail2Banの設定ファイルを開いて、自分好みにカスタマイズしましょう!


おっさんは、安定のnanoエディター派!Vimは…いつか使いこなせるようになりたいなぁ(遠い目)。


設定ファイルは、通常以下の場所にあります。もし違ったら、ご自身の環境に合わせて変更してくださいね。


sudo nano /etc/fail2ban/jail.conf

Fail2Ban設定、いざ開始!

設定ファイルを開いたら、以下の項目を編集して、Fail2Banの性能を最大限に引き出しましょう!


  • ignoreip: 信頼できるIPアドレス
  • bantime: アクセスを制限する時間(秒)
  • maxretry: 何回失敗したらアウト?ログイン試行回数

ignoreipには、普段自分がWebサイトにアクセスするPCのIPアドレスを設定しておくと、設定ミスで自分が締め出される悲劇を防げます。ただ、セキュリティ意識の高いあなたは、あえて設定しない…という選択もアリですね!


設定例:


ignoreip = 127.0.0.1/8 ::1
bantime = 3600
maxretry = 3

この設定例だと…


  • IPアドレス「127.0.0.1/8」と「::1」からのアクセスは無条件で許可!
  • ログインに3回失敗したら、問答無用で3600秒(1時間)アクセス禁止!

…という感じになります。bantimemaxretryの値は、Webサイトの特性に合わせて調整してくださいね。


設定を保存して、Fail2Banを再起動!

設定が終わったら、忘れずに設定ファイルを保存して、Fail2Banを再起動しましょう!


sudo systemctl restart fail2ban

これで、新しい設定がFail2Banに反映されます。


セキュリティ対策は、Webサイト運営の基本!

せっかく作ったWebサイトが、ブルートフォースアタックで破壊されたら、目も当てられませんよね。Fail2Banを導入して、安心・安全なWebサイト運営を実現しましょう!


…とは言え、Fail2Banはあくまでも対策の一部。パスワードを複雑にしたり、二段階認証を導入したり、他のセキュリティ対策も忘れずに行うようにしてくださいね!

コメントする