Fail2ban は、ブルート フォース攻撃やその他の自動化された攻撃から Linux サーバーを保護するために、多くの Linux システム管理者が使用する侵入防止ソフトウェアです。
このチュートリアルでは、Fail2ban をインストールして構成する方法について説明します Ubuntu 20.04 で。インストールと構成は非常に簡単で、Linux 管理の長年の経験は必要ありません。
Fail2ban をインストールして構成する手順に進みましょう。
1 1. インストール
まず、システムを更新してインストールを進めましょう。
sudo apt update
sudo apt install fail2ban
Fail2ban のステータスを確認すると、インストール後に自動的に起動するはずです。ステータスを確認するには、このコマンドを実行してください。
sudo systemctl status fail2ban
Output:
● fail2ban.service - Fail2Ban Service
Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-11-30 07:33:51 EST; 22s ago
Docs: man:fail2ban(1)
Main PID: 42104 (f2b/server)
Tasks: 5 (limit: 9485)
Memory: 14.3M
CGroup: /system.slice/fail2ban.service
└─42104 /usr/bin/python3 /usr/bin/fail2ban-server -xf start
Nov 30 07:33:51 techtutorguro.com systemd[1]: Starting Fail2Ban Service...
Nov 30 07:33:51 techtutorguro.com systemd[1]: Started Fail2Ban Service.
Nov 30 07:33:52 techtutorguro.com fail2ban-server[42104]: Server ready
2 2. 設定
Fail2ban の主な構成ファイルは /etc/fail2ban にあります。 . Fail2ban は最初に .local ですべての構成を読み取ります 拡張子、および .ローカル 拡張子は .conf をオーバーライドします
デフォルトの設定ファイルは /etc/fail2ban/jail.conf
です 、今度は jail.local を作成する必要があります ファイルであり、サーバーを保護するために必要な構成設定を配置する場所です。
まず jail.conf をコピーしましょう jail.local へ .
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
/etc/fail2ban/jail.local を編集しましょう。 ファイル。
sudo nano /etc/fail2ban/jail.local
[Default] セクションを目的の構成に変更します。
IP をホワイトリストに登録したい場合は、その IP を ignoreip に入れることができます 指令。 ignoreip を有効にするには コメントを外してください。
ignoreip = 127.0.0.1/8 ::1 192.168.1.50
バンタイム – ホストが禁止される秒数です。
bantime = 10m
時間を探す – 最後の「findtime」中に「maxretry」を生成した場合、ホストは禁止されます
findtime = 10m
最大再試行 – ホストが禁止されるまでの失敗回数です。
maxretry = 5
3 3. SSH の保護
Fail2ban は Jails を使用します サービスを保護するためのルールセットとして。 SSH サービスの監獄はデフォルトで有効になっています。
これは SSHD のデフォルトの jail です。
[sshd]
# To use more aggressive sshd modes set filter parameter "mode" in jail.local:
# normal (default), ddos, extra or aggressive (combines all).
# See "tests/files/logs/sshd" or "filter.d/sshd.conf" for usage example and details.
#mode = normal
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
さらにディレクティブを追加して maxretry を追加したい場合 、時間検索 、バンタイム 、および ignoreip SSHD刑務所ルールセットで.
[sshd]
# To use more aggressive sshd modes set filter parameter "mode" in jail.local:
# normal (default), ddos, extra or aggressive (combines all).
# See "tests/files/logs/sshd" or "filter.d/sshd.conf" for usage example and details.
#mode = normal
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
maxretry = 6
findtime = 1d
bantime = 1w
ignoreip = 127.0.0.1/8 192.168.1.50
jail.conf を変更した後 、ファイルを保存し、構成を有効にするために Fail2ban サービスを再起動します。
sudo systemctl restart fail2ban
4 4. Fail2ban クライアント
Fail2ban fail2ban-client という独自のコマンドライン ツールがあります これは、fail2ban サービスとやり取りするために使用できます。
fail2ban-client を使用できます 刑務所のステータスを確認するには、IP アドレスを禁止または禁止解除し、他の Fail2ban を変更することもできます
利用可能なオプションを確認するには。
fail2ban-client -h
刑務所のステータスを確認するには。
sudo fail2ban-client status sshd
IP を禁止するには。
sudo fail2ban-client set sshd banip 192.168.1.51
IP の禁止を解除するには。
sudo fail2ban-client set sshd unbanip 192.168.1.51
5 まとめ
Ubuntu 20.04 で Fail2ban を簡単にセットアップできることを実証しました。この記事が気に入ったら、CSF に関する記事も気に入るかもしれません。