GNU/Linux >> Linux の 問題 >  >> Cent OS

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

インターネットにさらされているすべてのサーバーは、マルウェア攻撃のリスクにさらされています。たとえば、ソフトウェアがパブリックネットワークに接続されている場合、攻撃者はブルートフォース攻撃を使用してアプリケーションにアクセスする可能性があります。

Fail2banは、サービスログで悪意のあるアクティビティを監視することにより、Linuxマシンをブルートフォース攻撃やその他の自動化された攻撃から保護するのに役立つオープンソースツールです。正規表現を使用してログファイルをスキャンします。パターンに一致するすべてのエントリがカウントされ、それらの数が特定の事前定義されたしきい値に達すると、Fail2banは問題のあるIPを特定の期間禁止します。デフォルトのシステムファイアウォールが禁止アクションとして使用されます。禁止期間が終了すると、IPアドレスは禁止リストから削除されます。

この記事では、CentOS8にFail2banをインストールして構成する方法について説明します。

CentOSへのFail2banのインストール#

Fail2banパッケージは、デフォルトのCentOS8リポジトリに含まれています。これをインストールするには、rootまたはsudo権限を持つユーザーとして次のコマンドを入力します。

sudo dnf install fail2ban

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

sudo systemctl enable --now fail2ban

Fail2banサーバーが実行されているかどうかを確認するには、次のように入力します。

sudo systemctl status fail2ban
● fail2ban.service - Fail2Ban Service
   Loaded: loaded (/usr/lib/systemd/system/fail2ban.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2020-09-10 12:53:45 UTC; 8s ago
...

それでおしまい。この時点で、CentOSサーバーでFail2Banが実行されています。

Fail2ban構成#

デフォルトのFail2banインストールには、/etc/fail2ban/jail.confという2つの構成ファイルが付属しています。 および/etc/fail2ban/jail.d/00-firewalld.conf 。これらのファイルは、パッケージの更新時に上書きされる可能性があるため、変更しないでください。

Fail2banは、構成ファイルを次の順序で読み取ります。

  • /etc/fail2ban/jail.conf
  • /etc/fail2ban/jail.d/*.conf
  • /etc/fail2ban/jail.local
  • /etc/fail2ban/jail.d/*.local

.local ファイルは.confの設定を上書きします ファイル。

Fail2banを構成する最も簡単な方法は、jail.confをコピーすることです。 jail.local.localを変更します ファイル。上級ユーザーは.localを作成できます 構成ファイルを最初から作成します。 .local ファイルには、対応する.confのすべての設定を含める必要はありません。 ファイル、上書きしたいものだけ。

.localを作成します デフォルトのjail.confの構成ファイル ファイル:

sudo cp /etc/fail2ban/jail.{conf,local}

Fail2banサーバーの構成を開始するには、jail.localを開きます。 テキストエディタでファイルする:

sudo nano /etc/fail2ban/jail.local

このファイルには、各構成オプションの機能を説明するコメントが含まれています。この例では、基本設定を変更します。

ホワイトリストIPアドレス#

禁止から除外するIPアドレス、IP範囲、またはホストをignoreipに追加できます。 指令。ここで、ローカルPCのIPアドレスと、ホワイトリストに登録する他のすべてのマシンを追加する必要があります。

ignoreipで始まる行のコメントを解除します IPアドレスをスペースで区切って追加します:

/etc/fail2ban/jail.local
ignoreip = 127.0.0.1/8 ::1 123.123.123.123 192.168.1.0/24

禁止設定#

bantimeの値 、findtime 、およびmaxretry オプションは禁止時間と禁止条件を定義します。

bantime IPが禁止されている期間です。サフィックスが指定されていない場合、デフォルトで秒になります。デフォルトでは、bantime 値は10分に設定されています。一般的に、ほとんどのユーザーはより長い禁止時間を設定したいと思うでしょう。値を好みに合わせて変更します:

/etc/fail2ban/jail.local
bantime  = 1d

IPを恒久的に禁止するには、負の数を使用します。

findtime 禁止が設定されるまでの失敗回数の間の期間です。たとえば、Fail2banが5回の失敗後にIPを禁止するように設定されている場合(maxretry 、以下を参照)、これらの障害はfindtime内に発生する必要があります 期間。

/etc/fail2ban/jail.local
findtime  = 10m

maxretry IPが禁止されるまでの障害の数です。デフォルト値は5に設定されていますが、これはほとんどのユーザーにとって問題ないはずです。

/etc/fail2ban/jail.local
maxretry = 5
電子メール通知#

Fail2banは、IPが禁止されたときに電子メールアラートを送信できます。電子メールメッセージを受信するには、サーバーにSMTPをインストールし、デフォルトのアクションを変更する必要があります。これにより、IPのみが%(action_mw)sに禁止されます。 、以下に示すように:

/etc/fail2ban/jail.local
action = %(action_mw)s

%(action_mw)s 問題のあるIPを禁止し、whoisレポートを記載したメールを送信します。関連するログをメールに含める場合は、アクションを%(action_mwl)sに設定します 。

送信メールアドレスと受信メールアドレスを調整することもできます:

/etc/fail2ban/jail.local
destemail = [email protected]

sender = [email protected]

Fail2ban刑務所#

Fail2banは刑務所の概念を使用しています。刑務所はサービスを説明し、フィルターとアクションを含みます。検索パターンに一致するログエントリがカウントされ、事前定義された条件が満たされると、対応するアクションが実行されます。

Fail2banには、さまざまなサービス用の多数の刑務所が付属しています。独自の刑務所構成を作成することもできます。

デフォルトでは、CentOS 8では、jailは有効になっていません。刑務所を有効にするには、enabled = trueを追加する必要があります 刑務所のタイトルの後。次の例は、sshdを有効にする方法を示しています 刑務所:

/etc/fail2ban/jail.local
[sshd]
enabled   = true
port    = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s

前のセクションで説明した設定は、jailごとに設定できます。次に例を示します:

/etc/fail2ban/jail.local

フィルタは/etc/fail2ban/filter.dにあります jailと同じ名前のファイルに保存されているディレクトリ。カスタムセットアップと正規表現の経験がある場合は、フィルターを微調整できます。

構成ファイルを変更するたびに、変更を有効にするためにFail2banサービスを再起動する必要があります。

sudo systemctl restart fail2ban

Fail2banクライアント#

Fail2banには、fail2ban-clientという名前のコマンドラインツールが付属しています。 これを使用してFail2banサービスを操作できます。

fail2ban-clientで利用可能なすべてのオプションを表示するには コマンド、-hで呼び出します オプション:

fail2ban-client -h

このツールを使用して、IPアドレスの禁止/禁止解除、設定の変更、サービスの再起動などを行うことができます。次にいくつかの例を示します。

  • 刑務所の状況を確認する:

    sudo fail2ban-client status sshd
  • IPの禁止を解除する:

    sudo fail2ban-client set sshd unbanip 23.34.45.56
  • IPを禁止する:

    sudo fail2ban-client set sshd banip 23.34.45.56

Cent OS
  1. CentOS8およびFedora33にFail2Banをインストールおよび構成する方法

  2. CentOS 8にFail2banをインストールして設定する方法は?

  3. CentOS8にCyber​​Panelをインストールして設定する方法

  1. CentOS7にNginxをインストールして構成する方法

  2. Ubuntu20.04にFail2banをインストールして構成する方法

  3. CentOS7にRedisをインストールして設定する方法

  1. CentOS7にGitLabをインストールして構成する方法

  2. CentOS7にRedmineをインストールして設定する方法

  3. CentOS8にRedisをインストールして設定する方法