ウェブサイト検索

Ubuntu 24.04 サーバーに Fail2ban をインストールする方法


このページでは

  1. 前提条件
  2. Fail2ban と UFW (Uncomplicated Firewall) のインストール
  3. Fail2ban の構成
  4. failed2ban-client を使用したfail2banルールのチェック
  5. failed2ban-client を使用して IP アドレスを禁止および禁止解除する方法
  6. 結論

Fail2ban は、管理者が悪意のあるログインやブルート フォース攻撃から Linux サーバーを保護するのに役立つ、無料のオープンソース IPS (侵入防止ソフトウェア) です。 Fail2ban は Python で書かれており、Apache2、SSH、FTP などのさまざまなサービス用のフィルターが付属しています。Fail2ban は、攻撃元の IP アドレスをブロックすることで悪意のあるログイン試行を減らします。

Fail2ban は、サービスのログ ファイル (e.f /var/log/auth.log) をスキャンし、間違ったパスワードが多すぎる、エクスプロイトを求めるなど、悪意のあるログイン試行を示す IP アドレスを禁止することによって機能します。Fail2ban は、iptables などの複数のファイアウォール バックエンドもサポートしています。 ufw、およびファイアウォール。また、ブロックされたログイン試行ごとに電子メール通知を設定することもできます。

このガイドでは、Ubuntu 24.04 サーバーに Fail2ba をインストールする方法を学習します。 Fail2ban ジェイルをセットアップし、基本的な「fail2ban-client」コマンドを学習してから、Fail2ban を使用して IP アドレスを禁止および禁止解除する方法を学習します。

前提条件

このガイドを始めるには、以下が揃っていることを確認してください。

  • Ubuntu 24.04 サーバー
  • 管理者権限を持つ非 root ユーザー

Fail2ban と UFW (Uncomplicated Firewall) のインストール

Fail2ban は、ブルート フォース攻撃からサーバーを保護する IPS (侵入防止ソフトウェア) です。これは、ほとんどの Linux リポジトリでデフォルトで利用可能であり、複数のファイアウォール バックエンドをサポートします。このセクションでは、Fail2ban をインストールし、Fail2ban のファイアウォール バックエンドとして使用される UFW (Uncomplicated Firewall) をセットアップします。

まず、以下のコマンドを実行して、Ubuntu パッケージのインデックスを更新します。

sudo apt update

次に、次の 'apt' コマンドを使用して、'fail2ban' および 'ufw' パッケージをインストールします。 「Y」と入力してインストールを確認します。

sudo apt install fail2ban ufw

インストールが完了したら、以下のコマンドを実行して SSH 用のポートを開き、UFW を有効にします。 「Y」を入力して、UFW を確認し、開始し、有効にします。

sudo ufw allow OpenSSH
sudo ufw enable

UFW が有効になると、「ファイアウォールがアクティブで、システム起動時に有効になっています」という出力が表示されます。

次に、次のコマンドを実行して、UFW のステータスを確認します。 UFW が「アクティブ」で「OpenSSH」が有効になっていることがわかります。

sudo ufw status

最後に、以下の「systemctl」コマンドを実行して、「fail2ban」サービスを開始、有効化、確認します。

sudo systemctl enable --now fail2ban
sudo systemctl status fail2ban

以下で、「fail2ban」がアクティブ (実行中) で有効になっていることがわかります。

Fail2ban の構成

Fail2ban をインストールした後、Fail2ban がアクション (チェックとブロック) を実行する前に構成する必要があります。このセクションでは、fail2ban 設定「/etc/fail2ban/jail.local」を変更し、「bantime」、「maxretry」のグローバル設定をセットアップします。および「findtime」、デフォルトのアクションと UFW ファイアウォール バックエンドを設定し、SSH サービスをブルート フォース攻撃から保護するために「sshd」jail を有効にします。

まず、次のようにデフォルトのfail2ban設定を「/etc/fail2ban/jail.local」にコピーします。

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

次の「nano」エディター コマンドを使用して、ファイル「/etc/fail2ban/jail.local」を開きます。

sudo nano /etc/fail2ban/jail.local

ローカル ネットワークを「ignoreip」オプションに追加します。このオプション内のサブネットは、fail2ban によってブロックされません。

ignoreip = 127.0.0.1/8 ::1 192.168.1.0/24 192.168.10.20

「bantime」 (IP アドレスが禁止される時間)、「findtime」 (禁止アクションまでの失敗回数間の期間) のデフォルト設定を調整します。および「maxretry」 (IP アドレスが禁止されるまでの失敗回数)。この例では、「禁止時間」を「1 時間」に、「検索時間」を「10」に設定します。分s」、「maxretry」を「5 回」に設定します。

bantime = 1h
findtime = 10m
maxretry = 5

必要に応じて、デフォルトの「アクション」を「%(action_mw)s」に変更して、IP アドレスを禁止し、電子メールで管理者に通知を送信します。また、「destmail」オプションと「sender」オプションも必ず変更してください。

action = %(action_mw)s
destemail = [email 
sender = [email 

デフォルトの「banaction」を「ufw」に変更します。これにより、UFW経由でIPアドレスがfail2banにより禁止されることになります。

banaction = ufw

ここで、「sshd」のデフォルトのjailを以下の構成に変更します。この例では、「sshd」jail には「bantime」、「maxretry」、および「findtime」のカスタム設定があります。 」。

[sshd]
enabled = true
maxretry = 3
findtime = 15m
bantime = 3h
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s

完了したら、ファイルを保存して終了します。

最後に、以下の「systemctl」コマンドを実行して「fail2ban」サービスを再起動し、変更を適用します。

sudo systemctl restart fail2ban

failed2ban-client を使用したfail2banルールの確認

この時点で、Fail2ban サービスは稼働しており、「sshd」jail が有効になっています。ここでは、Fail2ban のインストールを確認および管理するための「fail2ban-client」の基本コマンドを学習します。

fail2ban が実行されていることを確認するには、以下の「fail2ban-client」コマンドを実行します。

sudo fail2ban-client ping

failed2ban が実行されている場合は、「PONG」という出力が表示されます。

次のコマンドを使用して、「sshd」jail のステータスを確認します。これにより、「sshd」jail で検出および禁止された IP アドレスのリストが表示されます。

sudo fail2ban-client status sshd

次に、以下の「fail2ban-client get」コマンドを実行して、fail2ban ジェイルの特定のルールを確認します。このセクションでは、「bantime」、「maxretry」、「actions」、「findtime」を確認します。 >」、および「sshd」刑務所からの「ignoreip」。

sudo fail2ban-client get sshd bantime
sudo fail2ban-client get sshd maxretry
sudo fail2ban-client get sshd actions
sudo fail2ban-client get sshd findtime
sudo fail2ban-client get sshd ignoreip

failed2ban-client を使用して IP アドレスを禁止および禁止解除する方法

「fail2ban-client」を使用して IP アドレスを手動で禁止または禁止解除する方法を知ることが重要です。これにより、禁止リストから IP アドレスを簡単に削除できます。 「fail2ban-client」コマンドを利用して、Fail2ban で IP アドレスを禁止または禁止解除します。

fail2ban 経由で IP アドレスを手動で禁止するには、以下の「fail2ban-client」コマンドを実行します。この場合、禁止された IP アドレスは「sshd」jail に送られます。

sudo fail2ban-client set sshd banip IP-ADDRESS

次のコマンドを実行して、fail2ban 'sshd' ジェイルから IP アドレスの禁止を解除します。

Sudo fail2ban-client set sshd unbanip IP-ADDRESS

最後に、以下のコマンドを使用して「sshd」jail ステータスを確認できます。 IP アドレスが削除されていることがわかります。

sudo fail2ban-client status sshd

結論

おめでとう! Ubuntu 24.04サーバーへのfail2banのインストールが完了しました。また、グローバル構成やjailの設定など、Fail2banを構成するための基本的な構成についても学習しました。最後に、fail2ban ステータス、jail ステータス、jail 設定を確認し、IP アドレスを手動で禁止および禁止解除するための「fail2ban-client」コマンドの基本的な使用法も学びました。

関連記事: