WordPressログインURLの変更 — WPS Hide Loginで設定する手順

Web製作

本業のシステム開発でもそうですが、個人ブログであってもセキュリティには真っ先に気を使っています。WordPressの標準ログインURLは /wp-admin/ で全サイト共通なので、攻撃者にとってはログインページの場所が最初から分かっている状態です。

あとはIDとパスワードの突破だけ。パスワードを使い回していたり、短い文字列にしていたりすると、リスクは想像以上に高いです。

ログインURLの変更は5分で終わる設定なので、面倒でも最初にやっておくべき対策のひとつだと思っています。この記事ではWPS Hide Loginプラグインを使った手順と、万が一URLを忘れた場合の復旧方法も解説します。

WordPressのログインURLを見つける方法

繰り返しになりますが、標準のログインURLは全員が一律で以下のようになっています。

  • http://yourdomain.com/wp-admin
  • http://yourdomain.com/wp-login.php

これらのURLにアクセスすると、WordPressのログイン画面が表示されます。

WordPressの標準ログイン画面
WordPressの標準ログイン画面(2024年7月時点)

なんでログインURLが2つあるの?という疑問に答えると、wp-login.php が本物のURLです。

wp-admin/ でアクセスすると、この wp-login.php にリダイレクト(転送)されるようになっているだけなのです。

curlコマンドでリダイレクトを確認
curlコマンドでリダイレクト先を確認した例(2024年7月時点)

ログインURLをバレにくくする方法

非常にシンプルですが「標準のログインURLを隠す」および「管理者だけが把握している専用URLを作成する」という2点を実行するだけです。これを実現するためのプラグインもいくつかありますが、シンプルでおすすめなのは WPS Hide Login プラグインです。

WPS Hide Loginプラグイン
WPS Hide Login プラグイン(2024年7月時点)

インストール数は100万以上、レビュー数も2千を超え、これだけでも安心感がありますね。(2024年7月時点)

無料で利用できますし、プラグインの有効化後にも煩わしい広告は出てきませんので、とても良心的なプラグインだと思います。

WPS Hide Loginの使い方

  1. 1
    プラグインのインストールと有効化

    WordPressの管理画面から「プラグイン」→「新規追加」をクリックします。検索ボックスに「WPS Hide Login」と入力し、インストール後、有効化します。

  2. 2
    ログインURLの設定

    「設定」→「一般」から、WPS Hide Loginの設定画面にアクセスします。画面下部に非常にわかりやすくログインURLの設定欄があります。

    • 「ログインURL」の部分を、管理者だけが把握している任意の文字に変更します。必ずメモをして忘れないようにしてください。
    • 「リダイレクトURL」は、そのままで構いません。

    新しいログインURLを指定したら「変更を保存」をクリックします。

    WPS Hide Loginの設定画面
    WPS Hide Login の設定画面(2024年7月時点)

たったこれだけで設定が完了しました。

動作確認

設定後、今までのログインURLである ~~~~/wp-admin へアクセスしてみましょう。

この時、設定を失敗していたらログインできなくなって混乱するかもしれないので、ログイン中のブラウザはそのままに、シークレットウィンドウや別のブラウザでアクセスしてみることを強く推奨します。設定が間違っていても、もとのログインがそのまま残っていれば修正できますからね。

そして、元のログインURLにアクセスをすると記事が見つからない趣旨のメッセージが表示されます。この画面は、利用しているテーマによって違います。

専門的な表現をすると、404 Not Found エラー画面が出ていることになります。

404 Not Found画面
変更後にwp-adminにアクセスすると404エラーになる(2024年7月時点)
curlコマンドで404転送を確認
curlで確認すると404に転送されている(2024年7月時点)

なお、この動作は未ログイン状態の場合の挙動です。ログイン済みの状態だと wp-admin/ へアクセスしても従来通りに表示することが可能です。

ログインURLを忘れた場合の復旧方法

変更後のログインURLを忘れてしまった場合、管理画面に入れなくなるので焦ると思います。ただ、復旧方法はあるので落ち着いて対処してください。

最もシンプルな方法は、FTP(またはファイルマネージャー)でサーバーに接続し、WPS Hide Login プラグインを無効化することです。

  1. 1
    FTPまたはファイルマネージャーでサーバーに接続

    レンタルサーバーの管理画面からファイルマネージャーを開くか、FTPクライアントで接続します。Xserverの場合、サーバーパネルの「ファイルマネージャ」から操作できます。

  2. 2
    プラグインフォルダをリネーム

    wp-content/plugins/wps-hide-login/ フォルダの名前を wps-hide-login_disabled などに変更します。これだけでプラグインが無効化され、標準の wp-admin/ からログインできるようになります。

  3. 3
    ログイン後にフォルダ名を戻す

    管理画面にログインできたら、フォルダ名を元に戻して再度有効化し、今度はURLをしっかりメモしておきましょう。

その他の強化策:WordPressのログインURLに関するセキュリティ対策

セキュリティの担保ってなかなか難しいもので、やってもやってもキリがないのですよね。

まず知っていただきたい大前提ですが、セキュリティの世界に100点は存在しません。セキュリティ対策は複数の防御を積み重ねる前提で考えるのが現実的です。技術に詳しい人間は100点がないことを知っていますので、安易にセキュリティ対策が完璧なんて言葉は言わないのです。

とはいえ、少しでも100点に近づけていきたいですよね。その他の対策も簡単にご紹介します。

ブルートフォース攻撃への対策(今回実施した対策)

ログインURLを変更することで、ブルートフォース攻撃(パスワードを総当たりで試す攻撃)からサイトを守ることができます。標準のログインURLは一般的に知られているため、攻撃者が簡単にアクセスできてしまいます。ログインURLを変更することで、攻撃者がログインページを見つけるのを難しくします。

ただし、ログインURLを変更したといっても「分かりにくくした」だけでしかありません。変更後のURLが想像しやすいものだとあまり意味がありませんので、注意しましょう。

二段階認証の導入

ログインURLの変更に加え、二段階認証を導入することで、セキュリティをさらに強化できます。WordPressでは「Two-Factor」などのプラグインで設定が可能です。

認証コードの管理には、私は1Passwordを愛用しています。パスワード管理と二段階認証のコード生成を一元管理できるので、複数サイトを運営していても管理が煩雑になりません。Google AuthenticatorやAuthyも定番ですが、パスワードマネージャーと統合できるツールのほうが実務上は楽です。

ログイン試行回数の制限

「Limit Login Attempts Reloaded」などのプラグインを使用して、ログイン試行回数を制限することも有効です。これにより、総当たり攻撃が発生したときにすぐにブロックがかかりますので、不正なログインを突破される可能性を大きく下げることができます。

まとめ:5分の設定でリスクを一段下げる

ログインURLの変更は、セキュリティ対策として「必須」ではありません。パスワード管理がしっかりしていれば、それだけで相当な防御力はあります。

ただ、「世界中の誰もがログインURLを知っている」状態より「一部の人しか知らない」状態の方がよいのは確かで、5分の設定でそれが実現できるなら悪くない投資だと思っています。

セキュリティに100点はありません。手軽にできる対策は淡々と積み上げておくのがよいです。

Related Posts