Fail2BanでWordPressを保護する方法
English version: How to protect WordPress with Fail2Ban
WP Cerber SecurityとFail2Banを併用することで、最も効果的なレベルで保護を強化できます。これにより、 iptablesを使用してOSレベルでWordPressをブルートフォース攻撃やDoS攻撃から保護できます。
攻撃の詳細については、 「ブルート フォース攻撃、DoS 攻撃、DDoS 攻撃 – 違いは何ですか?」をご覧ください。
注意: Fail2Ban を設定するには、Linux サーバーへのルートアクセス権が必要です。
WP Cerber SecurityではFail2Banを使用する3つのオプションがあります
- Apacheアクセスログを監視する場合はHTTP 403レスポンスヘッダーを使用する
- Syslog ファイルを使用して失敗したログイン試行を監視する
- カスタム ログ ファイルを使用して失敗したログイン試行を監視する
HTTP 403 応答の Apache アクセス ログを監視する
ログイン試行が失敗すると、WP CerberはHTTPヘッダーで403レスポンスを返します。このレスポンスはApacheアクセスログに書き込まれ、Fail2Banによって監視される可能性があります。WP Cerberのこの動作はデフォルトで有効になっています。このアプローチの欠点は、Fail2Banがこれらの試行を見つけるためにaccess.log全体を解析する必要があることです。
Syslog を使用して失敗したログイン試行を監視する
デフォルトでは、WP Cerberは失敗したログイン試行をsyslogファイルに記録する際にLOG_AUTHファシリティを使用します。ただし、独自の値でファシリティを指定することもできます。新しい値を設定するには、 CERBER_LOG_FACILITY定数を整数値で定義する必要があります。注:syslogまたはカスタムファイル(下記参照)への書き込みを有効にするには、プラグイン設定の「アクティビティ」セクションで「失敗したログイン試行をファイルに書き込む」を有効にする必要があります。
'CERBER_LOG_FACILITY' と LOG_AUTHPRIV を定義します。
カスタムファイルを使用して失敗したログイン試行を監視する
すべての失敗した試行を任意のカスタムログファイルに書き込む場合は、定数CERBER_FAIL_LOGを使用して絶対パスでファイル名を指定する必要があります。フォルダーまたはログファイルへのApacheプロセスの書き込み権限を設定し、 「失敗したログイン試行をファイルに書き込む」を有効にすることを忘れないでください。ファイルが存在しない場合は、プラグインが作成を試みます。CERBER_FAIL_LOGが定義されている場合、プラグインはデフォルトのsyslogにメッセージを書き込みません。
'CERBER_FAIL_LOG'、'/var/log/fail2ban.log' を定義します。
Web サーバー プロセス (Apache) に指定されたファイルへの書き込み権限があることを確認します。
追加情報: