このチュートリアルでは、CentOS 8にfail2banをインストールする方法を示します。知らない人のために、Fail2banはUnixベースのサーバー用のセキュリティベースのアプリケーションです。 fail2banサービスは、SSHとFTPを不正な接続から保護するために一般的に使用されます。これらのアプリは、Pythonスクリプトを使用してシステム侵入の試みのログファイルを解析し、iptables構成ファイルにカスタムルールを追加して特定のIPアドレスへのアクセスを禁止するデーモンとして実行されます。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、'sudo
を追加する必要があります。 ルート権限を取得するコマンドに‘。ターミナルを開いてこのチュートリアルを実行する準備ができたら、10分以内にCentOS8サーバーにfail2banをインストールします。
前提条件
- 次のオペレーティングシステムのいずれかを実行しているサーバー:CentOS8。
- 潜在的な問題を防ぐために、OSの新規インストールを使用することをお勧めします。
non-root sudo user
またはroot user
へのアクセス 。non-root sudo user
として行動することをお勧めします ただし、ルートとして機能するときに注意しないと、システムに害を及ぼす可能性があるためです。
CentOS8にFail2Banをインストールする
ステップ1.まず、システムが最新であることを確認することから始めましょう。
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm sudo dnf update
ステップ2.CentOSにFail2banをインストールします。
次のコマンドを実行して、Fail2banパッケージをインストールします。
sudo dnf install fail2ban
ステップ3.Fail2Banを構成します。
このチュートリアルでは、jail.local
という別のファイルを作成します /etc/fail2ban/
にあります 示されているディレクトリ:
nano /etc/fail2ban/jail.local
[DEFAULT] ignoreip = 192.168.46.2/24 bantime = 21600 findtime = 300 maxretry = 3 banaction = iptables-multiport backend = systemd [sshd] enabled = true
上記の構成のオプションについて説明します:
- ignoreip:禁止しないIPアドレスまたはホスト名のリストを指定します。
- 禁止時間:ホストが禁止される秒数を指定します(つまり、有効な禁止期間)。
- maxretry:ホストが禁止されるまでの失敗の数を指定します。
- findtime:fail2banは、最後の「findtime」秒の間に「maxretry」を生成した場合、ホストを禁止します。
- banaction:アクションを禁止します。
- バックエンド:ログファイルの変更を取得するために使用されるバックエンドを指定します。
次に、サービスを開始し、サーバーを再起動するたびに自動的に開始するようにします:
systemctl start fail2ban systemctl enable fail2ban systemctl status fail2ban
最後に、fail2ban-clientを使用して、失敗したIPアドレスと禁止されたIPアドレスを監視できます。fail2banサーバーの現在のステータスを表示するには、次のコマンドを実行します。
fail2ban-client status fail2ban-client status sshd
おめでとうございます!fail2banが正常にインストールされました。CentOS8システムでSSHを保護するためにfail2banをインストールするためにこのチュートリアルを使用していただき、ありがとうございます。追加のヘルプや役立つ情報については、fail2banの公式Webサイトを確認することをお勧めします。