WP Cerber と NGINX による WordPress の強化
これら 2 つを連携すると、あらゆるサイトの防御を劇的に向上させることができます
English version: Hardening WordPress with WP Cerber and NGINX
NGINXは、無料のオープンソースの高性能 HTTP サーバーです。 WP Cerber は、WordPress を利用したサイトを侵入者やハッカーから保護する、無料のオープンソースのセキュリティ プラグインです。
WP Cerber と NGINX を併用して WordPress を強化する方法
まず、カスタム ログイン URLを設定し、 「wp-login.php への直接アクセスをブロックし、HTTP 404 Not Found Error を返す」にチェックを入れる必要があります。ここで詳細を確認してください: wp-login.php の名前を変更する方法。セキュリティ上の理由から、カスタム ログイン URL を「login」または「wp-admin」として設定しないでください。
次に、NGINX 構成ファイル内の wp-login.php ファイルへのアクセスをブロックする必要があります。デフォルトでは、このファイルはディレクトリ /etc/nginx、/usr/local/nginx/conf、または /usr/local/etc/nginx に配置されます。
サイトの NGINX 構成ファイルのサーバー セクションに次の行を追加します。
location /wp-login.php { return 404; }
サイトで XML RPC を使用していない場合は、次の行も追加することを強くお勧めします。
場所 /xmlrpc.php { 戻り値 404; }
最後に、攻撃者の試みや愚かなボットによる自動化された試みによってサイトとサーバーが過負荷にならないように保護します。受信リクエストのレートを制限する NGINX の機能を使用してこれを実行してみましょう。レート制限を使用すると、特定のしきい値を超える受信リクエストのレートを遅くすることができます。
メイン設定ファイルnginx.confを開き、 http セクションを見つけます。その中に次の行を追加します。
limit_req_zone $binary_remote_addr ゾーン = メイン:10 メートル レート = 60r/メートル;
次に、サイトのサーバーセクションに戻り、次の行を見つけます。
位置 / {
中括弧を開いた後に次の行を追加します。
limit_req ゾーン = メイン バースト = 10 遅延なし;
構成ファイルに加えた変更は、構成を再ロードするコマンドがnginxに送信されるか、nginx が再起動されるまで適用されません。新しい構成をロードするには、サーバーのコマンドラインで次のコマンドを実行します。
サービスnginxのリロード
終わり!
これで、あなたとバックエンド サーバー (おそらく Apache を搭載) はリラックスできます。これらのいくつかの簡単な手順により、「不正なリクエスト」から受信トラフィックをクリーンアップし、サーバーのリソースが「正しいリクエスト」を処理できるようになります。