WordPress のカスタムログインページ
wp-login.php の名前を変更する方法、カスタム ログイン URL を作成する方法、自動化されたブルート フォース攻撃やボット攻撃から WordPress を保護する方法。
English version: Custom login page for WordPress
カスタム ログイン ページ機能は、攻撃対象領域を減らし、スパム登録を排除するための優れたツールです。これは、新しくインストールした WordPress で最初に有効にする必要があるものです。もう 1 つの強く推奨されるセキュリティ対策は、 WordPress の plugins フォルダーの名前を変更することです。
なぜ重要で、なぜ機能するのか
Cerber Labでの調査によると、ほとんどのハッカー ツールと攻撃は、被害者の WordPress を利用した Web サイトにはデフォルトのログイン ページがあり、プラグインはデフォルトのフォルダにあるという仮定に基づいています。どの Web サイトでもデフォルト値を使用しないことをお勧めしますが、多くの Web サイト所有者はこれらの単純な原則を無視しており、ハッカーによる攻撃を成功させています。ハッカーが WordPress をこよなく愛するのはそのためです。いつでも何十万ものハッキングされた Web サイトが見られます。
カスタム ログイン ページを構成する
WP Cerber を使用すると、デフォルトの WordPress ログイン URL wp-login.phpを必要な任意の URL に簡単かつ安全に変更できます。つまり、独自の既知のカスタム ログイン ページ (カスタム ログイン URL は、この文脈では同じことを意味します) を構成し、悪意のある人物、スキャナー、およびボットから wp-login.php を隠すことができます。 .htaccess ファイルを編集したり、wp-login.php ファイルの名前を変更したりする必要はありません。 WP Cerber を使用すると、数回クリックするだけで構成できます。
- プラグインのメイン設定管理ページに移動します。
- 新しい希望のログイン URL を[カスタム ログイン URL]フィールドに入力し、設定を保存します。それでおしまい。
- キャッシュ プラグインを使用している場合は、キャッシュしないページのリストに新しいログイン URL を追加します。
- 新しいログイン URL が正しく機能し、それを使用してログインできることを確認します。これは、シークレット ブラウザー ウィンドウで行います。新しいログイン URL が正常に機能することを確認するまで、Web サイトからログアウトしないでください。
ボットやスキャナーから wp-login.php を隠す方法
顧客ログイン ページを有効にしたら、デフォルトの WordPress ログイン ページを非表示にして、ブルート フォース攻撃を防ぐのが理にかなっています。これを実現するには、 「wp-login.php 認証リクエストの処理」設定を「wp-login.php へのアクセスをブロックする」に設定します。ページにアクセスしようとすると、WP Cerber は標準の「404 Not Found」ページを表示します。考慮すべき欠点は 1 つだけです。攻撃者が十分に賢い場合、Web サイトのスキャンを続行し、実際のログイン ページを検索する可能性があります。
wp-login.php を無効にする方法
考慮すべきもう 1 つの高度なオプションは、アクセスをブロックせずに wp-login.php を無効にすることです。それはどのように機能しますか?この独自の WP Cerber 機能は、wp-login.php による認証の試みを阻止します。ログインしようとすると、WP Cerber はデフォルトの不正なパスワード エラーを模倣し、ユーザー認証プロセスを中止します。どのパスワードを入力しても問題ありません。正しいパスワードを使用しても、誰もログインできません。この機能を有効にするには、 wp-login.php 認証リクエストの処理設定を「wp-login.php による認証を拒否する」に設定します。
覚えておきたい注意点
あなたまたはあなたのユーザーが wp-login.php が無効になっており、ログインに使用できないことを忘れた場合、あなたまたはあなたのユーザーは Web サイトにログインできなくなり、wp-login.php を何度か使用しようとするとロックされます。
"Processing wp-login.php authentication requests" をデフォルト以外の値に設定した場合、カスタム ログイン URL のみを使用できます。 /wp-login.php も /wp-admin/ もログインに使用できなくなりました。
知っておくべき重要事項
- W3 Total CacheやWP Super Cache などのキャッシュ プラグインを使用する場合は、キャッシュしないページのリストに新しいカスタム ログイン URL のスラッグを追加する必要があります。
- WordPress マルチサイト インストールの場合、新しいログイン URL はすべてのサイトに対してグローバルに設定されます。
- wp-login.php ファイルを手動で削除したり名前を変更したりしないでください。 WordPress を新しいバージョンに更新すると、wp-login.php が復元され、侵入者が再びアクセスできるようになります。
二要素認証でより安全に
管理者のアカウントを保護するために 2FA を有効にすることを検討してください。 2 要素認証は、ユーザー名とパスワードだけでなく、2 番目の識別要素を必要とする追加のセキュリティ レイヤーを提供します。
詳細: WordPress で 2 要素認証を有効にする方法
カスタム ログイン URL 機能のトラブルシューティング
カスタム ログイン ページを有効にすると、一部のプラグインが動作しなくなる場合があります。ログイン ページのカスタマイズ プラグインまたはソーシャル ログイン プラグインを使用している場合、そのようなプラグインが機能しなくなる可能性があります。この問題を解決するには、[カスタム ログイン ページのレンダリングを延期する] を有効にします。この設定の詳細をお読みください。
カスタム ログイン URL を設定してしばらくして忘れてしまった場合は、まず、サイト管理者のメール ボックスをチェックして、新しいログイン URL に関する通知メールまたはメールの週次レポートを確認してください。これらのメールには、カスタム ログイン URL が記載されています。そのようなメールが見つからない場合は、以下の手順に従って WP Cerber を手動で再インストールする必要があります。
- ホスティング コントロール パネルの FTP または任意のファイル マネージャーを使用して、プラグイン フォルダー /wp-cerber/ を手動で削除します。
- デフォルトの /wp-login.php URL またはカスタム ログイン URL を有効にする前に使用していた別の方法を使用して、通常どおり WordPress ダッシュボードにログインします。
- 通常どおり WP Cerber Security プラグインをインストールして有効にします。
- プラグインのメイン設定ページに移動します。
- [カスタム ログイン URL]フィールドを確認します。使用する必要があるカスタム ログイン URL が表示されます。それを覚えて。
Hi, I am following your instruction but still can access wp-login.php directly, my WordPress using mu and version4.5.3.
Check your White IP Access List in the settings of the plugin. All IP addresses from this list are allowed to bypass this rule. Make sure that IP address of your computer is not in the list.
Just to be 100% clear, if an IP address is in the IP Whitelist, then it CAN still utilize the wp-login.php?
Even if you have “Block direct access to wp-login.php and return HTTP 404 Not Found Error” checked under “Disable wp-login.php”, Whitelisted IP’s can still login using wp-login.php?
Is there any way to completely disable wp-login.php for everyone (including Whitelisted IP’s)?
Yes, of course. Whitelisted IPs can do everything. You should trust those IPs completely. To completely disable wp-login.php you need to either use .htaccess file or, and that is better, add a single string to the NGINX config file: http://wpcerber.com/hardening-wordpress-with-wp-cerber-and-nginx/
Hi,
I have a 404 Not Found with the new wp-login slug.
Is it related to something required with the webserver (I’m using Apache) ?
What slug did you enter?
I choose “connexion” to remplace wp-login.php, there’s no page called this way so no conflict but I still have a 404 error.
I tried to change my permalinks parameters but it’s don’t change anything.
That slug is normal. Most likely some caching engine knows nothing about the new URL. It maybe a caching plugin you use or some shadow caching engine that your hosting provider uses.
In fact after some diging I found it was a misconfiguration with Apache (Allow override not defined).
Thanks anyway, WP-Cerber is a very interesting plugin. I’ll share it around me.
First, thanks for one of the most helpful WP plugins around. For the custom login feature, I’d just like to suggest the following:
What about an extra sentence in the Custom Login area such as “don’t forget about the /wp-admin/ redirect, see above”?
Reason:
In the current Cerber Dashboard, the switch to
> Disable automatic redirecting to the login page when /wp-admin/ is requested by an unauthorized request
is located a few entries above the custom login switches, no direct connection, and the German translation has “Anmeldeseite” there, as opposed to “Login-Seite” later, so you don’t necessarily make the connection.
(I only found out when checking the logs and wondering how some crooks managed to find my custom login page…)
Yes, I’m going to rearrange these settings and the whole section soon.