昨日までアクセスできていたのに急に
You don’t have permission to access this resource.
が表示されて管理画面にアクセスできなくなった!
ということで原因と直し方を紹介します。
※原因・直し方は色々あるのでこの記事の内容は一例だと思ってください。
エラーの詳細
エラーが発生した経緯を書いておきます。
①ブックマークに登録してあるリンクからWordPress管理画面にログイン
②Forbidden You don’t have permission to access this resource.画面が表示される
通常であれば、①のログイン画面の後はこういった画面が表示されるはず。
今回表示されたエラー文の内容は、403エラーで対象サイトのファイルにアクセスする権限がありませんよ。
というもの。
PC上のファイルへのアクセス権限はユーザごとに参照、編集、削除などの権限を割り当てることで制御しています。
今回WordPressにログインを試みたアカウントは管理者アカウントなので
全ての権限が与えられたマスターアカウント。
なのになぜファイルが見れないのか…?
ちなみに管理画面以外のページ(記事など)はアクセスできる状態です。
管理画面にアクセスできない原因はサーバーのログイン制限機能!
アクセスができない原因はWordPress側ではなく、サーバー側にありました。
私が使用しているのはConoHa Wingではセキュリティ機能の一つにログイン制限機能があります。
このログイン制限機能によりファイルへのアクセスを拒否されていました。
じゃあ、なぜログイン制限機能が急に出張ってきたのか?もちろん設定は変えていません。
ConoHa Wingのアクセス解析を確認すると
管理画面のURLに異常なアクセス数があったので、不正アクセスを疑いました。
※殆どは自分のIPアドレスからだったので実際には違うかも
不正アクセスを疑った理由はもう一つあり、管理画面のURLがデフォルトのままだったこと。
例:https://xxxxyyyyyzzzzzz.com/wp-admin
前から簡単に管理画面のURL予測できちゃうじゃん?と思いつつ放置していました。焦
管理画面にアクセスできるようにする方法
原因の予想がついた所でここからは直す方法を解説します。
ログイン制限機能を解除する
まずはログイン制限機能を解除して管理画面にアクセスできるようにします。
①ConoHa Wingにログインして左側のメニューから「WING>サイト管理>サイトセキュリティ」を選択
②タブから「WordPressセキュリティ」を選択してログイン制限機能を「OFF」に設定
③WordPressの管理画面にアクセスできることを確認
これでひとまず管理画面にアクセスできるようになりました。
管理画面のURLを変更する
ログイン制限機能をOFFにしたままだと不正アクセスでブルートフォース攻撃をされた場合に
サーバーに負荷がかかり過ぎるなど様々な問題が発生しかねません。
なので管理画面のURLを予測が難しいものに変更します。
変更する方法はググると色々出てきますが、難しいことをすると他の問題が発生してドツボにハマります。
なので今回はプラグインを使用してサクッと終わらせます。
①WordPress管理画面からプラグイン「WPS Hide Login」を検索してインストール&有効化
②WordPress管理画面から「設定>WPS Hide Login」を選択
③ログインURLに変更後のWordPress管理画面URLを設定して「変更を保存」で変更を反映
※変更後のURLは必ずメモしておくこと
※リダイレクトURLはデフォルト404のままでOK
※長すぎるURLだと上手く機能しませんでした
④③のURLをブラウザのアドレスバーに入力してWordPress管理画面にログインできることを確認
※アクセスできない場合、後述の「プラグインをサーバ側から直接削除する方法」でプラグインを削除後、手順①からやり直してください
⑤Conoha Wingのログイン制限機能を「ON」に戻す
⑥④の手順で再度管理画面にアクセスできることを確認
※WordPressからはログアウトした状態でアクセスすること
※引き続き403 Forbiddenエラーが表示される場合は少し時間を置いてから再度アクセスしてみてください
⑦WordPress管理画面のブックマークURLを③のURLに変更して保存
以上で管理画面のURLの変更は完了です。
プラグインをサーバ側から直接削除する方法
管理画面のURL変更に失敗すると管理画面からプラグインを削除することも、URLを元に戻すこともできなくなります。
ここではプラグインをサーバー側から直接削除して無効にする手順を解説します。
①ConoHa Wingにログインして左側のメニューから「WING>サイト管理>ファイルマネージャー」を選択
②左側のタブから「public_html>(自分のサイトドメイン)>wp-content>plugins」と選択
③右側のフォルダから「wps-hide-login」を選択して上部のゴミ箱マークでフォルダを削除
④変更前の管理画面URLから管理画面にアクセスできることを確認
例:https://xxxxyyyyyzzzzzz.com/wp-admin
以上です。
最後に
この記事で紹介した原因と直し方はあくまでも一例です。
ですが、もし直前にサーバ設定等を弄っていなければ、この方法で直る可能性があります。
自己責任にはなりますが、試してみてください。
コメント