Fail2Ban jail 管理
上級ユーザであれば、Fail2Ban jail で IP アドレスをブロックする方法を構成することもできます。Fail2Ban jail とは、フィルタと 1 つ以上のアクションの組み合わせです。フィルタは、ログイン試行の失敗やその他の疑わしい行動に対応するパターンを検出する正規表現を定義します。アクションは、不正な IP アドレスがフィルタで検知されたときに実行されるコマンドを定義します。
Plesk には、すべてのホスティングサービスに対する jail があらかじめ構成されています(ウェブサーバ、メールサーバ、FTP サーバ)。これらの大部分は同じように機能します。ログインの失敗を検知し、当該サービスへのアクセスを 10 分間ブロックします。以下の jail には特別な説明が必要です。
-
plesk-apache-badbot
は、Apache のアクセスログファイルから、メールグラバーおよび脆弱性スキャナーを探します。禁止期間は 2 日間です。 -
plesk-horde
とplesk-roundcube
は、ウェブメールへのログインの失敗を検知し、ウェブサービスへのアクセスを 10 分間ブロックします。 -
recidive
は、Fail2Ban のログから、他の jail による禁止を探します。この jail は、直近 10 分間に他の jail から禁止を 5 回受けたホストをブロックします。禁止期間は 1 週間で、このサーバのすべてのサービスに適用されます。 -
plesk-modsecurity
は、ModSecurity ウェブアプリケーションファイアウォールが有害だと判断した IP アドレスを禁止します。この jail は、ModSecurity が既に実行中でなければアクティブ化できず、ModSecurity が「検知のみ」モードであっても攻撃者を禁止できます。禁止期間は 10 分間です。
インストールされていない Plesk コンポーネントの事前定義済み jail は一覧に表示されません。例えば、RoundCube ウェブメールがインストールされていない場合、plesk-roundcube
jail は使用可能な jail の一覧に表示されません。
Plesk に付属していない他社のサービスを保護したり、サービスを特定の脅威から保護するには、独自の jail をセットアップして、この jail をオン/オフにしたり、jail の設定を更新したり、jail で使用できるフィルタを追加します。
注: Plesk に付属している jail は削除できず、非アクティブ化することしかできません。一方、自分で追加した jail は削除することができます。
Plesk にで表示されるのは、インストールされている Plesk コンポーネント用の jail だけです。例えば、qmail メールサーバがインストールされていない場合、qmail jail は表示されません。
一度に複数の jail を有効にするために[オンにする]グループ操作を使用して、いずれかの jail が起動に失敗すると、すべての jail が起動しなくなります。このような場合、jail を 1 つずつ有効にしてください。
新しい jail をセットアップするには:
- [ツールと設定] > [IP アドレス禁止(Fail2Ban)]>[jail]>[jail を追加]に進みます。
- jail 設定を指定します。
Plesk に既にセットアップされている以下のフィルタを使用することができます。
- apache-auth:Apache 認証の失敗
- apache-badbots:スパムボットおよび不正なウェブクローラ
- courierlogin:Courier IMAP および POP3 認証の失敗
- dovecot:Dovecot IMAP、POP3、Sieve 認証の失敗
- plesk-horde:Horde ウェブメール認証の失敗
- plesk-panel:Plesk 認証の失敗
- plesk-qmail:QMail SMTP 認証の失敗
- plesk-roundcube:Roundcube ウェブメール認証の失敗
- postfix-sasl:Postfix SMTP および SASL 認証の失敗
- proftpd:ProFTPD ログインの失敗
- recidive:Fail2Ban によって繰り返し禁止されたホスト
- sshd:SSH ログインの失敗
Plesk に既にセットアップされている以下のアクションを使用することができます。
- iptables:1 つのポートで iptables ファイアウォール経由の IP アドレスの使用を禁止する
- iptables-allports:すべてのポートで iptables ファイアウォール経由の IP アドレスの使用を禁止する
- iptables-multiport:複数のポートで iptables ファイアウォール経由の IP アドレスの使用を禁止する
- sendmail:sendmail 経由で通知メールを送信する
jail で使用できるフィルタを追加するには:
- [ツールと設定] > [IP アドレス禁止(Fail2Ban)]>[jail]>[フィルタ管理]>[フィルタを追加]に進みます。
- フィルタ名、およびログファイルの行の検出に使用する正規表現を指定します。Fail2Ban フィルタについて詳しくは、http://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Filters の Fail2Ban ドキュメントを参照してください。Fail2Ban は Python アプリケーションなので、Python の正規表現について詳しくは、https://docs.python.org/2/library/re.html の Python ドキュメントを参照してください。