ウェブサイト検索

Ubuntu 24.04でSSHセキュリティのためにFail2banをインストールする方法


Fail2banは、誤った認証情報でログインを試みるIPアドレスをブロックすることによって、Linuxシステムをブルートフォース攻撃から保護する強力なPythonベースのセキュリティツールです。

それは、失敗したログイン試行やその他の疑わしい活動のためにログファイルを監視します。そのような活動を検出すると、ファイアウォールのルールを変更することによって、違反しているIPアドレスを禁止します。

この記事では、Ubuntu 24.04にFail2banをインストールして使用し、これらの攻撃からシステムを保護する方法を探ります。

Ubuntu 24.04にFail2banをインストールする

Ubuntu 24.04にFail2banをインストールするには、次のaptコマンドを実行してシステムパッケージリストを更新する必要があります。

sudo apt update

次に、以下のコマンドを使用してFail2banをインストールします。

sudo apt install fail2ban

インストール後、Fail2ban</strong>が正しくインストールされていることをバージョンを確認して確認します。

fail2ban-client --version

Fail2Ban v1.0.2

Ubuntu 24.04でFail2banを設定する

/etc/fail2ban</strong> ディレクトリは、Fail2Ban</strong> の設定ファイルとログの主な場所です。このディレクトリには、Fail2Banの機能に不可欠な複数のサブディレクトリとファイルが含まれています。

ここに主要な要素の内訳があります:

  • action.d: このディレクトリには、Fail2BanがIPアドレスを禁止するために使用するアクションスクリプトが含まれています。これらのスクリプトは、使用されているファイアウォールまたはサービスに特有のものです(例:iptables、ufw、nftables)。
  • filter.d</code>: このディレクトリには、Fail2BanがIPアドレスを特定して禁止する方法を定義するフィルター設定ファイルが含まれています。これらのフィルターは、監視されるサービスに特有のものです(例:SSH</code>, HTTP</code>, FTP</code>)。
  • jail.d: このディレクトリには、Fail2Banが監視する特定のサービスとIPアドレスを禁止するためのルールを定義するジャイル設定ファイルが含まれています。
  • paths-arch.conf、paths-common.conf、paths-debian.conf、paths-opensuse.conf:これらのファイルは、異なるLinuxディストリビューションに特有のパスを含んでいます。
  • fail2ban.conf</code>:これはFail2Banのメイン設定ファイルで、グローバルな設定やオプションが含まれています。
  • jail.conf</code>: このファイルには、さまざまなサービスのデフォルトの監獄設定が含まれています。
  • jail.local: このファイルはデフォルトの監獄設定を上書きするために使用されます。アップグレードを容易にし、カスタマイズを行うためにjail.localファイルを作成することをお勧めします。
  • fail2ban.log: これはFail2Banの主要なログファイルであり、アクションやイベントを記録します。

Fail2banには、ニーズに応じてカスタマイズできるデフォルトの設定ファイルが付属しています。メインの設定ファイルは&47;etc&47;fail2ban&47;jail.confにあります。

ただし、更新中に変更が上書きされないように、ローカルコピー(/etc/fail2ban/jail.local</strong>)を作成することが推奨されます。

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

nanoテキストエディタでローカル設定ファイルを開きます。

sudo nano /etc/fail2ban/jail.local

設定ファイルで、[ssh]セクションを見つけ、行のコメントを解除し、Fail2banの動作を調整するために値を変更します。

  • maxretry: これは、IPアドレスが禁止される前の最大ログイン失敗回数を定義します。
  • findtime: これは、最大再試行の試みが禁止を引き起こすために発生しなければならない時間ウィンドウを設定します。
  • bantime: これは、最大再試行回数を超えた後にIPアドレスが禁止される期間を定義します。

例の設定(必要に応じて修正してください):

[ssh]
enabled = true
maxretry = 3
findtime = 10
bantime = 4h

この例では、ジャイルが有効になっており、最大再試行回数は3回に設定されており、10秒のウィンドウ内で、禁止されたIPは4時間ブロックされます。

希望する変更を加えた後、ファイルを保存し、新しい設定を有効にするためにFail2banサービスを再起動してください。

sudo systemctl restart fail2ban
sudo systemctl enable fail2ban
sudo systemctl status fail2ban

Ubuntu 24.04でFail2banをテストする

Fail2banをテストするには、システムに対してブルートフォース攻撃をシミュレートできます。これは、複数のログイン失敗試行など、Fail2banが監視する条件を意図的にトリガーすることを含みます。

まず、別のLinuxマシンにログインし、次のコマンドを実行して失敗したログイン試行をシミュレートします。192.168.122.100をサーバーのIPアドレスに置き換えることを忘れないでください。

for i in {1..6}; do ssh [email ; done

失敗したログイン試行を行った後、IPアドレスが禁止されているかどうかを確認するためにFail2banのログをチェックしてください。

sudo tail -f /var/log/fail2ban.log

SSH ジェイルの状態を確認し、IPアドレスが禁止されているかどうかをチェックします。

sudo fail2ban-client status sshd

IPアドレスの禁止を解除する必要がある場合は、次のコマンドを使用してください。

sudo fail2ban-client set sshd unbanip 192.168.122.1
結論

Fail2ban \は、あなたのUbuntu 24.04 \サーバーをブルートフォース攻撃から保護するための強力なツールです。このガイドに示された手順に従うことで、Fail2banをインストール、設定、使用し、サーバーへの不正アクセスのリスクを大幅に減らすことができ、データやアプリケーションのためにより安全な環境を確保することができます。

関連記事: