GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでのFail2ban:サーバー管理者向けのインターネットセキュリティおよびユーティリティツール

Fail2banは、LinuxサーバーおよびWebホスト管理者向けのインターネットセキュリティユーティリティツールです。 Fail2banツールを使用して、Linuxサーバーでルールを制御、監視、および追加できます。任意のホスティングプラットフォームにWebサイトがあるとします。その場合、間違ったユーザー名またはパスワードをすばやく入力すると、システムが自動的にWHMまたはc-Panel、およびダッシュボードにログインできないことを知っているかもしれません。 Linuxシステムでサーバーを実行している場合は、Fail2banツールを使用してサーバーのログイン監視システムを維持できます。 Linuxサーバーの管理者であれば、Fail2banをインストールすることは、サーバーを安全、安全、安定させるための優れた試みです。

Fail2banの重要な機能

Fail2banはPythonで記述されており、Linuxサーバーをブルートフォース攻撃から防ぐことができます。
攻撃を受けた後、Fail2banログファイルからその攻撃の強度を確認できます。あなたは尋ねるかもしれません、Fail2banはあなたのサーバーへのDDOS攻撃を防ぐことができますか?答えは、Fail2banはDDOS攻撃を回避するようには設計されていないということです。不明または疑わしいログイン試行を防ぐために作成されています。

しかし、間違いなく、Fail2banはLinuxサーバーに対するDDOS攻撃の数を減らすことができます。 LinuxサーバーにFail2banツールをインストールしてパラメーターを設定すると、サーバーをログイン攻撃から自動的に保護できます。

Fail2banは、Jailスクリプトを使用してLinuxサーバーを安全にします。 Jailは設定スクリプトファイルであり、すべてのデフォルトのIPブロッキングおよびメンテナンスパラメータが設定されています。 Linuxサーバーのセキュリティを確保するには、Jailスクリプトを理解することが不可欠です。

Fail2banの設定ファイルを表示するには、端末で次のlistコマンドを実行します。 fail2ban.confが見つかります およびjail.d リスト内のファイル。 jail.dで作業します ファイルを使用して、Fail2ban設定を再構成します。

ls -al /etc/fail2ban/

LinuxシステムでのFail2banツールの主な機能と基本的な機能をリストしています。

  • PythonScrapyをサポート
  • 特定の範囲のIPをブロックする
  • グローバルタイムゾーンワイズブロック
  • カスタマイズされたパラメータ設定
  • Apache、Nginx、SSHD、およびその他のサーバーで簡単に構成できます
  • 電子メールアラートを受信する
  • 禁止および禁止解除施設
  • 禁止時間を設定する

さまざまなLinuxディストリビューションでのFail2ban

---

Linux愛好家は、LinuxがほとんどのWebサーバーに電力を供給していることを知っている必要があります。サーバーはLinuxで動作しますが、不正なログイン試行をブロックするには、非常に厳しいセキュリティベンチマークを維持する必要があります。この投稿では、さまざまなLinuxディストリビューションにFail2banパッケージをインストールして構成する方法を説明します。後で、Fail2banツールを変更して監視する方法についても説明します。

ステップ1:LinuxにFail2banパッケージをインストールする

LinuxにFail2banをインストールするのは簡単なプロセスです。システムリポジトリを更新し、いくつかのターミナルコマンドラインを使用してパッケージを直接インストールする必要があります。 Debian、Fedora Linux、Red Hat Linux、OpenSuSE、およびArchLinuxでのFail2banのインストール方法を説明します。

1。 UbuntuおよびDebianディストリビューションにFail2banをインストールする

Debianディストリビューションでは、システムリポジトリの更新は、Linuxシステムをよりスムーズかつ効率的にするためのプロセスです。システムに新しいパッケージをインストールするため、最初にシステムリポジトリを更新する必要があります。次のコマンドラインを使用して、システムリポジトリを更新できます。

sudo apt update
sudo apt upgrade -y

次に、次のaptitudeパッケージ管理コマンドをコピーして貼り付け、Debianシステム内にFail2banツールをインストールします。このコマンドは、Ubuntu、Kubuntu、Linux Mint、およびその他のDebianディストリビューションで使用できます。

sudo apt install fail2ban

2。 ManjaroにFail2banをインストールする

ここでは、ArchおよびArchベースのLinuxディストリビューションにFail2banパッケージをインストールする方法を示すためにManjaroLinuxを選択しました。 Manjaroは、ArchLinuxプロジェクトによってサポートおよび保守されています。次のpackmanを使用できます ArchLinuxにFail2banをインストールするためのコマンドライン。

sudo pacman -S fail2ban

パッケージのインストール中にエラーが発生した場合は、次の-Rsを実行できます。 エラーをバイパスするには、ArchLinuxターミナルでコマンドを実行します。

sudo pacman -Rs fail2ban

3。 OpenSuSEおよびSuSELinuxにFail2banをインストールする

SuSEおよびOpenSuSELinuxでは、Fail2banのインストールは他のディストリビューションよりもはるかに簡単です。まず、.ympをダウンロードする必要があります Fail2banのパッケージファイル。ここからSuSELinux用のFail2banパッケージをダウンロードできます。ダウンロードが完了したら、SuSELinuxのデフォルトのソフトウェアストアからパッケージファイルを開きます。次に、インストールボタンをクリックして、インストールプロセスを完了します。

4。 FedoraにFail2banをインストールする

ここでは、Fail2banパッケージをFedoraLinuxにインストールする方法を紹介します。 DNFコマンドを使用してパッケージをFedoraにインストールしています。まず、エンタープライズLinux(EPEL)リリース用の追加パッケージをシステムにインストールします。

sudo dnf install epel-release

次に、Fedora Linuxターミナルで次のコマンドを実行して、Fail2banパッケージを取得します。

sudo systemctl start sshd
sudo dnf install fail2ban

5。 CentOSおよびRedLinuxにFail2banをインストールする

ごくまれに、サーバーの保守にRedHatとCentOSを使用する人がいます。ただし、Red Hat Linuxにサーバーがインストールされている場合は、次のyumを実行することで、Fail2banパッケージをLinuxシステムにインストールできます。 Linuxマシンのコマンド。

まず、システムにEnterprise Linux(EPEL)リリース用の追加パッケージをインストールします。次に、Fail2banパッケージをインストールします。

sudo yum install epel-release
sudo yum install fail2ban

ステップ2:Linuxのファイアウォール設定

Fail2banはネットワークプロトコルを使用してLinuxサーバーを保守するため、Linuxファイアウォールが有効になっていて、Fail2banパッケージにアクセスできるように構成されていることを確認する必要があります。デフォルトでは、Fail2banはポート22を使用して接続を確立します。そのため、Fail2banのポート22を許可する必要があります。ここでは、Debinaおよびその他のLinuxディストリビューションのファイアウォール設定を設定する方法を説明します。

1。 UbuntuとDebianのファイアウォール設定

DebianおよびUbuntuユーザーは、UFW設定を有効にしてファイアウォールルールを追加できます。ターミナルのコマンドラインに従って、DebianディストリビューションでUFWファイアウォールを設定します。 Debianシステムでファイアウォールが有効になっていない場合は、最初にファイアウォールを有効にしてください。

sudo ufw allow 22
sudo ufw enable

これで、Linuxシステムのファイアウォールステータスを確認できます。ポート22が追加され、ファイアウォール設定で許可されていることがわかります。

sudo ufw status

2。 Red Hat、CentOS、およびFedoraLinuxのファイアウォール設定

Red Hat、Fedora、Centos、Arch Linux、SuSE、およびその他のLinuxディストリビューションは、Firewalldツールを使用してファイアウォール設定を構成します。 UFWはDebianディストリビューション専用のコマンドラインベースのファイアウォールインターフェースであることがわかっているので、同様に、Firewalldはファイアウォールルールを追加できる主要なアプリケーションプログラミングインターフェース(API)管理ツールです。

次のシステム制御コマンドを使用して、LinuxマシンでFirewalldを開始、有効化、停止、およびリロードできます。

systemctl status firewalld
systemctl enable firewalld
sudo firewall-cmd --reload
systemctl stop firewalld

ファイアウォール構成でポート22を許可する必要があることはすでにわかっています。次のコマンドを使用して、ルールを追加します。 Firewalldツールでゾーンベースの構成システムを使用することもできます。

firewall-cmd --add-port=22/tcp
firewall-cmd --list-all

次に、LinuxシステムでFail2banツールを再起動します。

systemctl restart fail2ban

ステップ3:LinuxでFail2banを構成する

これまで、Fail2banをインストールし、ファイアウォール設定を構成しました。次に、Fail2ban設定を構成する方法を説明します。一般的な設定と構成は、すべてのLinuxディストリビューションで同じです。すべてのディストリビューションでこの手順を実行できます。

まず、Fail2banでJail設定を構成する必要があります。変更する必要がない場合は、デフォルト設定のままにしておくことができます。構成スクリプトは/etc/fail2ban/にあります。 ディレクトリ。次のターミナルコマンドラインを使用して、Jail設定を編集および構成します。

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

これで、Jail構成スクリプト内に次のルールをコピーして貼り付けることができます。ここでは、bantime、ignoreIP、findtime、およびmaxretryパラメーターを設定しています。

[DEFAULT]
ignoreip = 127.0.0.1
bantime = 3600
findtime = 600
maxretry = 3


[sshd]
enabled = true

ignoreip = 127.0.0.1 ::1 192.168.100.11

Fail2banスクリプトパラメータについて簡潔に説明しています。

  • バンタイム – Bantimeは、疑わしいIPアドレスを禁止するために適用する期間です。
  • 無視する – ignoreipは、Fail2banツールによって禁止または監視したくないIPアドレスと呼ばれます。通常、現在のホストIP、個人IPアドレス、およびローカルホストアドレスはignorepリスト内に追加されます。
  • maxretry – Maxretryは、Linuxサーバーで失敗したログイン試行を保存するログファイルの一種です。すべてのユーザーにログインを許可する試行回数を制御できます。
  • findtime – findtimeは、疑わしいIPアドレスをクロスチェックするために検索する設定に追加できる過去の期間です。

LinuxのFail2ban設定からIPアドレスの禁止を解除することもできます。まず、JailのSSHD構成スクリプトを開く必要があります。次に、目的のIPアドレスの禁止を解除できます。

/etc/fail2ban/jail.d/sshd.local

次のコマンドラインを使用して、IPアドレスの禁止を解除します。

/etc/fail2ban/jail.local
sudo fail2ban-client set sshd unbanip 83.136.253.43

ステップ4:Fail2banステータスを監視する

インストールと構成の手順が完了すると、LinuxシステムからFail2banの仕事関数を監視できるようになります。ここでは、Fail2banツールを監視および監視するためにLinuxターミナルで実行できるいくつかの基本的なコマンドラインについて説明します。

次のコマンドラインを使用して、Fail2banツールに関するデバッグ情報、トレース情報、ping、およびその他の関連情報を表示できます。

fail2ban-client -vvv -x start

次のターミナルコマンドラインを使用して、LinuxシステムからFail2banのログファイルと認証ファイルを表示します。

nano /var/log/fail2ban.log
nano /var/log/auth.log

次のコマンドラインを使用して、Fail2banのクライアントのステータスとSSHDステータスを監視します。

sudo fail2ban-client status
sudo fail2ban-client status sshd

禁止されたIPログを表示するには、Linuxシェルで次のターミナルコマンドラインを実行します。

sudo zgrep 'Ban:' /var/log/fail2ban.log*

エラーログファイルを表示するには、Linuxターミナルで次のターミナルコマンドラインを実行します。

/var/log/httpd/error_log

システム制御コマンドラインを使用して、Fail2banのステータスを確認できます。以下に示すターミナルコマンドラインを使用して、LinuxシステムのFail2banステータスを確認します。

systemctl status fail2ban
systemctl status fail2ban.services

システムの起動時にFail2banサービスを実行できます。スタートアップアプリケーションリストにFail2banパッケージを追加するには、Linux端末で次のシステム制御コマンドラインを使用します。

systemctl enable fail2ban.services

最後に、以下に示すターミナルコマンドラインを使用して、LinuxシステムでFail2banサービスを開始、再起動、および有効にすることができます。

systemctl enable fail2ban
systemctl start fail2ban
systemctl restart fail2ban

追加のヒント:メールアラートを受け取る

この手順では、誰かが間違ったユーザー名またはパスワード、および悪意のあるネットワークを使用して、許可されていないデバイスからLinuxサーバーにログインしようとしたときに電子メールアラートを受け取る方法を示します。メールアラート設定を設定するには、jail.localを編集する必要があります Fail2banディレクトリからのファイル。

まず、Jail設定スクリプトのコピーを作成して、何か問題が発生した場合にデフォルト設定を置き換えることができます。次のコマンドラインを実行して、Jailスクリプトのコピーを作成します。

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

以下のコマンドラインを使用して、jail.localを編集できます。 構成スクリプト。

sudo nano /etc/fail2ban/jail.local

次に、以下に示すスクリプトコマンドをコピーしてjail.local内に貼り付けます。 脚本。次に、スクリプトの宛先電子メール(destemail)と送信者電子メールアドレスを置き換えます。次に、構成スクリプトを保存して終了できます。

[DEFAULT]
destemail = [email protected]
sender = [email protected]

# to ban & send an e-mail with whois report to the destemail.
action = %(action_mw)s

# same as action_mw but also send relevant log lines
#action = %(action_mwl)s

次に、LinuxシステムでFail2banツールを再起動します。

sudo systemctl restart fail2ban

LinuxからFail2banを削除する

LinuxディストリビューションでFail2banを削除するには、Linuxからパッケージをアンインストールする標準的な方法が必要です。次に、LinuxシステムからFail2banツールを削除する方法を説明します。次のコマンドラインを使用して、Debian /UbuntuLinuxシステムからパッケージを削除します。

sudo apt-get remove fail2ban

次のコマンドラインを使用して、Fedora、CentOS、Red Hat Linux、およびその他のLinuxディストリビューションからFail2banを削除します。

sudo yum remove fail2ban
sudo yum purge fail2ban
sudo yum remove --auto-remove fail2ban

最後の言葉

間違いなく、Fail2banはLinuxシステムとサーバー管理者にとって不可欠なツールです。 UFW、IPtables、およびその他のネットワーク監視ツールを使用するとサーバーマネージャーに役立ちますが、Fail2banは、有害または匿名のユーザーからの匿名ログインを防ぐことができる完全なパッケージです。

投稿全体で、さまざまなLinuxディストリビューションにFail2banツールをインストール、構成、および監視する方法について説明しました。この投稿が有用で有益であると思われる場合は、この投稿を友達やLinuxサーバー管理者と共有してください。この投稿に関するご意見はコメント欄にご記入ください。


Linux
  1. 初心者のためのLinuxサーバーを保護するための6つのオープンソースツールとヒント

  2. CYA –Linux用のシステムスナップショットおよび復元ユーティリティ

  3. Linuxシステム管理者向けのトレーニングと認定

  1. LinuxおよびWindows用の16の最高のSyslogサーバー

  2. Linuxサーバーのセキュリティを開始するための5つのヒント

  3. MoshコマンドラインツールLinuxをインストールして使用する方法

  1. セキュリティとパフォーマンスのためのDNSのベストプラクティス

  2. Lynis –Linuxサーバー用の自動セキュリティ監査ツール

  3. 監視のためにWindowsおよびLinuxホストをNagiosサーバーに追加する方法