Tips

WordPressのログインURL変更ならWP Cerber Security

WordPressのサイトを立ち上げたらまず最初にしたいのがセキュリティ対策。特にハッカーにログインされないための工夫が必要です。

セキュリティ脆弱性を指摘されている※2025年7月追記

最近このプラグイン自体がセキュリティ脆弱性のためか、WordPress公式のストアからアップデートできなくなっていました。開発自体は続いており、プラグインのサイトからファイルをダウンロードして利用することはできます。

開発者によると、脆弱性の指摘に関して不満があるようです。

why is there no wordpress download anymore?

私もWordPressプラグインを開発して公式のレビューを通したことがあり、脆弱性の指摘も受けたことがあります。その指摘は細かくて誰がそんな悪用する?みたいなものでしたが、確かに理論的には悪用できなくもないな、と思って修正したところ、無事承認されました。なので、開発者が対応していないというのが私的にはしっくりきません。セキュリティに関するプラグインなのに脆弱性の指摘を受けているというのが残念過ぎます。なので、この際利用をやめることにしました。

替わりになるプラグインとして、以前も使っていたSiteGuard WP Pluginがあります。これはログイン画面のURL変更機能も機能としてはあります。ただ、この機能、Apacheでしか使えなくて、Nginxでは動きません。

reCAPTCHAには対応していないのですが、ひらがななどの画像を読ませてロボット判定を行う機能があります。Nginxならこの機能のためだけにSiteGuard WP Pluginをい、ログイン画面のURLの保護はNginxのBasic認証などで行うのが良いかもしれません。

上記をご理解の上、WP Cerber Securityを使う場合は、以降をご覧ください。

デフォルトのログインURLを変更する

ハッカーは次のようなWordPressのデフォルトのログインURLを狙ってきます。

https://proggy.jp/wp-login.php

https://proggy.jp/wp-admin/

これらを独自のものに変更することが大切です。

function.phpなどにコードを追加するなど、プラグイン追加無しで行うこともできますが、プラグインを使う方が楽にできます。

また、最近のこの手のプラグインは不正ログイン対策の様々な機能が入っているので、利用するのがおすすめです。

どのプラグインがいいのか?

不正ログイン対策の代表的なプラグインとしては、

があります。

結論からいうと、WP Cerber Securityがオススメです。

というのは、専門的な話になりますが、SiteGuard WP PluginはWEBサーバとしてApacheを利用しているのが前提になっています。Apacheの.htaccessという機能を利用し、ログインURLを変更しています。したがって、最近利用が増えているNginxというWEBサーバには対応していません。

Apacheを使っているならSiteGuard WP Pluginを使うのもいいと思いますが、移行時のことも考えるとNginxにも対応しているWP Cerber Securityを使っておいた方がいいでしょう。

またボット対策としては、SiteGuard WP Pluginは画像認識(文字の画像を読ませる)、WP Cerber SecurityはGoogleが運営するreCAPTCHAを利用しています。

どちらも有効なのでこの点は差は無いと思いますが、WP Cerber Securityはログイン履歴をしっかり保存していて、あやしいIPアドレスからアクセスされていないか確認できます。SiteGuard WP Pluginよりもこのあたりの機能がしっかりしています。

WP Cerber Securityの使い方

ログインURLを変える

まず通常のプラグインと同じように、WP Cerber Securityをインストール、有効化します。

WPCerberのダッシュボードから「メイン設定」タブをクリックします。

そして、以下のように設定します。

ダッシュボードのリダイレクトを無効にする 有効化する
404ページを表示する 「アクティブテーマから404テンプレートを使用する」を選択
カスタムログイン URL ログインURLにしたい文字列を入力
wp-login.php を無効にします 有効化する

404画面のデザインは統一する

「アクティブテーマから404テンプレートを使用する」を選択していないと、デフォルトのログインURLにアクセスすると、白画面に「Not Found」とだけ表示されるWEBサーバの非常にシンプルな404画面が表示されてしまいます。ドメイン配下の適当なURLにアクセスした時に表示される「お探しの記事が見つかりませんでした」という綺麗にデザインされた404画面と差ができてしまいます。ボットはそのあたりの差をみつけてくるかもしれないので、全て綺麗な404画面になるようにこの選択をします。

なぜかwp-login.phpにアクセスできてしまう時

「wp-login.php を無効にします」の設定をしても、このプラグインは賢こ過ぎて一度ログインが成功したIPアドレスからのアクセスだと、普通にwp-login.phpにアクセスできたりします。なので、動作確認を自分のパソコンからしていると、「あれ、アクセスできちゃうなぁ。」ということがあります。その場合は、携帯の電波でテザリングするなどしてIPアドレスを変えて試してみてください。

reCAPTCHAを導入する

ボットからのログインを防ぐため、reCAPTCHAを導入します。これはSiteGuard WP Pluginでは文字画像の認識で人とボットを区別していますが、WP Cerber Securityの場合はGoogle社のサービスであるreCAPTCHAを使います。

reCAPTCHAを導入すると、次のようにチェックを求められます。

さらに、毎回ではないのですが、時々ランダムなお題で画像を選択することを求められます。

reCAPTCHAを導入するには、次のページで「サイトキー」と「シークレットキー」を発行します。

Google reCAPTCHA

「reCAPTCHAタイプ」には「

サイト所有者の確認が必要なエラー: キータイプが無効です

英語だと、

Error for owner – invalid key type

となります。

「サイトキー」と「シークレットキー」を発行したら、「アンチスパム」をクリックし、

「reCAPTCHA」タブをクリックします。「サイトキー」「シークレットキー」を入力し、次のように設定します。

WordPress ログインフォームの reCAPTCHA を有効にする 有効化する
WordPress コメントフォームの reCAPTCHA を有効にする 有効化する
ログインしているユーザーへの reCAPTCHA を無効にする 有効化する

これでログイン画面でreCAPTCHAが動作するようになります。

reCAPTCHAはGoogle社が運営しているので、Google社への依存を強くしたくない!という原理主義的な考え方の方には合っていないかもしれません。その場合は、SiteGuard WP Pluginを使う方がいいかもしれません。

ログインのアクティビティを管理できる

まとめ

このように

なお、ConoHa VPSというサービスでKUSANAGIのWordPressサイトを立上げた経緯を次の記事に書きました。参考にして見てください。

ConoHa VPS口コミ評判!KUSANAGIでWordPressを構築してみた!ConoHa VPSでKusanagiを使ってWordPressサイトを構築しました。あなたが見ているこのサイトです。体験レビューをお伝...