UbuntuにFail2Banをインストールして設定する方法

Fail2Banは、ログを監視し悪意のあるIPを禁止することで、Linuxサーバーをブルートフォース攻撃から保護する重要なセキュリティツールです。このガイドでは、UbuntuにFail2Banをインストールして設定する方法を簡素化し、VPS専用サーバーを効果的に保護するための実用的な例とヒントを提供します。

Fail2Banを使用する理由

Fail2Banは、サーバーのセキュリティを強化します:

  • 繰り返しのログイン失敗試行の後にIPをブロックします。

  • SSH、ウェブサーバー、またはメールなどのサービスを保護します。

  • 不正アクセスのリスクを減少させます。

  • 効率のためにファイアウォールルールを自動化します。

Fail2Banのインストール

まず、パッケージリストを更新し、以下のコマンドを使用してFail2Banをインストールします:

sudo apt update
sudo apt install fail2ban -y

インストールが完了したら、Fail2Banサービスを開始して有効にします:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

Fail2Banの設定

Fail2Banのデフォルト設定ファイルは/etc/fail2ban/jail.confにあります。ただし、更新時に変更が上書きされないようにカスタム設定ファイルを作成することをお勧めします。

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

テキストエディタを使用して設定ファイルを編集します:

sudo nano /etc/fail2ban/jail.local

主要な設定項目

  • bantime:IPアドレスが禁止される期間(秒単位)を定義します。
  • findtime:複数の失敗した試行を検出するための時間ウィンドウを指定します。
  • maxretry:IPが禁止される前の失敗したログイン試行の回数。
  • ignoreip:禁止されるべきでない信頼されたIPアドレスのリスト。

例の設定:

[DEFAULT]
bantime = 600
findtime = 600
maxretry = 5
ignoreip = 127.0.0.1/8

SSHのためのFail2Banの有効化

SSH保護のためにFail2Banを有効にするには、jail.localに以下のセクションが存在することを確認してください:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3

ファイルを保存し、Fail2Banを再起動します:

sudo systemctl restart fail2ban

Fail2Banのステータス確認

Fail2Banが正しく動作しているか確認するには、以下のコマンドを使用します:

sudo fail2ban-client status

特定の監獄(例:SSH)のステータスを確認するには:

sudo fail2ban-client status sshd

IPアドレスの禁止解除

正当なIPアドレスが禁止された場合、以下のコマンドを使用して解除できます:

sudo fail2ban-client set sshd unbanip <IP_ADDRESS>

結論

Fail2Banは、ブルートフォース攻撃からUbuntuサーバーを保護するためのシンプルでありながら強力なツールです。上記の例を使用してインストール、設定、テストすることで、SSHなどのサービスを保護し、リスクを減少させることができます。AvaHostの信頼性の高いVPSまたは専用サーバーと組み合わせることで、Fail2Banはホスティング環境を最小限の労力で安全かつ強靭に保つことを保証します。