プロクラ(クラウドAIロボット、詳しい役)SabaKore

セキュリティ

【セキュリティ】Fail2banで総当たり攻撃を自動でブロックする

2026年8月16日

レン(新米インフラエンジニア)・調べ中

レン

鍵認証にしたら攻撃は防げるって言ってたけど、それでもログを見ると攻撃の試みが止まらないんだよね…気持ち悪い。
プロクラ(クラウドAIロボット、詳しい役)・困った

プロクラ

鍵認証で『破られはしない』けど、攻撃の『試み』自体は続くからね。そこで役立つのがFail2ban。ログイン失敗を何回も繰り返すIPアドレスを、自動で一定時間ブロックしてくれるツールだよ。
ウィルスン(セキュリティの番人)・攻撃中

ウィルスン

Fail2ban…ワタシの天敵の一つだ。同じIPから何度も試していると、ある時点でぴしゃりと扉を閉ざされる。攻撃の手数が一気に削られるのだよ。

パスワード認証と公開鍵認証の違い

パスワード認証

あなたパスワードを送る →サーバー

合っていれば誰でも入れる。総当たりで試され続ける

公開鍵認証

あなた
秘密鍵🔑
鍵は送らない
署名だけを送る →
サーバー
公開鍵

秘密鍵は手元から出ない。通信を覗かれても鍵そのものは盗まれない

仕組みはシンプル

プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

Fail2banはログファイルを監視して、『短時間に何回も認証に失敗したIP』を見つけると、ファイアウォールに指示してそのIPを一時的に遮断する。仕組みが単純なぶん、応用が利くんだ。
  • sudo apt install fail2ban でインストール
  • /etc/fail2ban/jail.local に設定を書く(jail.confは直接編集しない)
  • maxretry(何回失敗で遮断するか)、bantime(遮断する時間)を調整
  • sudo fail2ban-client status sshd で現在遮断中のIPを確認できる
  • SSHだけでなく、WordPressのログインやメールサーバーへの攻撃にも応用できる
プロクラ(クラウドAIロボット、詳しい役)・分析中

プロクラ

jail.confを直接編集しないのは、更新時に上書きされるからだよ。jail.localに書いた設定が優先されるので、変更したい項目だけをそちらに書けばいい。

数字の決め方

レン(新米インフラエンジニア)・調べ中

レン

何回失敗で遮断、みたいな数字はどう決めればいいの?
プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

厳しすぎると自分が引っかかり、緩すぎると効かない。目安としてはこのあたりから始めて、ログを見ながら調整するといいよ。
  • maxretry: 3〜5回。鍵認証だけにしているなら厳しめでいい
  • findtime: 何分以内の失敗を数えるか。10分程度が扱いやすい
  • bantime: 最初は1時間程度。しつこい相手には長くする設定もある
  • 遮断は「一時的」でいい。永久に遮断してもIPは変えられる

自分が締め出されたら

レン(新米インフラエンジニア)・悩む

レン

自分が何回もパスワード間違えたら、自分が遮断されちゃったりしない?
プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

いい心配だね。あるよ。だから自分の固定IPがあるなら ignoreip に登録しておくと安心。ただ、家庭の回線はIPが変わることがあるので、それだけに頼らないほうがいい。
  • 多くの事業者が、管理画面から直接サーバーの画面に入れる機能を用意している
  • そこから fail2ban-client set sshd unbanip でIPを解除できる
  • この機能の存在と入り方は、締め出される前に確認しておく
  • 自分が遮断されたときのために、鍵は必ず手元に控えを持っておく
プロクラ(クラウドAIロボット、詳しい役)・OK

プロクラ

ここが確認できていれば、設定を思い切って厳しくできる。逆に、戻る手段を知らないまま厳しくするのは危ないよ。

Fail2banだけでは足りない

ウィルスン(セキュリティの番人)・ニヤリ

ウィルスン

…遮断は、同じIPから来た場合の話だろう? ならば、毎回違うIPから1回ずつ試せばよい。ワタシは急いでいないのでな。
プロクラ(クラウドAIロボット、詳しい役)・困った

プロクラ

そのとおりで、大量のIPを使い分けられると回数で引っかからなくなる。Fail2banは「手数を削る道具」であって、「破られなくする道具」ではないんだ。
  • 破られなくするのは鍵認証。パスワード認証を止めることが本体
  • rootでの直接ログインを禁止する
  • ファイアウォールで、SSHは自分のIPからだけに絞れるならそれが一番強い
  • Fail2banはその上に重ねる。ログを汚す試行が減るので、異常に気づきやすくなる
ウィルスン(セキュリティの番人)・攻撃中

ウィルスン

鍵認証で『城門を固く』し、Fail2banで『しつこい侵入者を追い返す』。この2枚重ねは効くぞ。ワタシとしては、正直あまり広めてほしくないのだがな…フフ。
レン(新米インフラエンジニア)・できた

レン

本体は鍵認証。Fail2banは手数を削る側。戻る手段を先に確認しておく、だね。

あわせて読みたい

→ コラム記事をすべて見る