Security Blog
Security Blog
Posted By Gregory

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 構成ファイルのサーバー セクションに次の行を追加します。

場所 /wp-login.php { 404 を返します; }

サイトで XML RPC を使用していない場合は、次の行も追加することを強くお勧めします。

場所 /xmlrpc.php { 404 を返します; }

最後に、攻撃者や愚かなボットによる自動攻撃によるサイトとサーバーの過負荷を防ぎます。NGINXの受信リクエストレート制限機能を使って、これを実現しましょう。レート制限により、特定のしきい値を超える受信リクエストのレートを低下させることができます。

メイン設定ファイルnginx.confを開き、 http セクションを見つけます。そこに次の行を追加します。

 limit_req_zone $binary_remote_addr ゾーン=メイン:10m レート=60r/m;

次に、サイトのサーバーセクションに戻り、次の行を見つけます。

位置 / {

開き中括弧の後に次の行を追加します。

 limit_req ゾーン=メイン バースト=10 ノードレイ;

設定ファイルに加えた変更は、 nginxに設定を再読み込みするコマンドを送信するか、nginxを再起動するまで適用されません。新しい設定を読み込むには、サーバーのコマンドラインで以下を実行してください。

サービス nginx のリロード

終わり!

これで、あなたとバックエンドサーバー(おそらくApache)は安心です。これらの簡単な手順で、「不正なリクエスト」による受信トラフィックをクリーンアップし、サーバーのリソースが「正しいリクエスト」を処理できるようになります。


I'm a team lead in Cerber Tech. I'm a software & database architect, WordPress - PHP - SQL - JavaScript developer. I started coding in 1993 on IBM System/370 (yeah, that was amazing days) and today software engineering at Cerber Tech is how I make my living. I've taught to have high standards for myself as well as using them in developing software solutions.

View Comments
There are currently no comments.