こんにちは!SEふじたけです。
このブログはGCP(Google Cloud Platform)にて構築しています。
そしてセキュリティを向上させるために、Site Guard WP Pluginを入れたのですが。。。
WordPressのログイン画面が開けない!

変更されたログインURLを入力したけど上のエラーになってしまいます。
今回はSite Guard WP Pluginを導入後に自身のWordPress管理画面にログイン出来なくなったので、対処法を備忘録として書いていきます。
またログイン画面を開けるようにするには
WordPressディレクトリ内に存在する「.htaccess」ファイルを一部変更すればOKみたいです。
WordPressのインストールディレクトリにある.htaccessの以下の記述を削除してください。
#SITEGUARD_PLUGIN_SETTINGS_START から
#SITEGUARD_PLUGIN_SETTINGS_END まで
https://www.jp-secure.com/siteguard_wp_plugin/faq/
ファイルを変更するためにGCPの環境にFTP接続する必要があります。
GCPのWordPressディレクトリにFTP接続する
GCPにFTP接続するために以下サイト様を参考にさせていただきました。
参考URL: https://stpost.net/se/web-se/server/winscp-sftp
WinSCPを用いてGCPに対してSFTP接続しています。


それぞれ必要な箇所について説明します。
GCPの外部IPアドレスを入力
GCP→VMインスタンスからWordPress環境で使用するVMの外部IPアドレスをログイン時に使用します。


Key Commentを入力
PuTTY Key GeneratorからPrivate keyを生成する場合にKey Commentを入力して生成します。
Key Commentの内容は任意の文字列でOKです。

PuTTY Key Generatorにて鍵を生成し、パスワードの入力を省略します。
PrivateKey ppkファイルを設定
PuTTY Key Genaratorにて生成したppkファイルを使用して認証します。

これでSFTP接続が出来てGCP環境を見る事が出来ました。
FTP接続完了後WordPress内の環境を確認
以下のようにFTP接続された状態となっています。

WordPressの環境は以下のディレクトリに存在しています。
/var/www/html
その中に「.htaccess」があります。しかし初期は隠しファイルなので表示されていません。
隠しファイルを表示する為にはWinSCPの設定を変更する必要があります。

「オプション」→「環境設定」→「パネル」を選択したら赤枠の項目にチェックします。
これで「.htaccess」が表示されます。
しかし「権限がありません」と表示される
以下の画面が出てアクセスできません。

FTP上ではアクセス出来ませんので、GCPのコンソールからアクセス権を変更します。
GCPの「VMインスタンス」から「SSH」をクリックする事でGCPのコンソールが起動します。

コンソールで以下の内容を入力して確認します。
stat -c "%a %n" var/www/html/.htaccess
statコマンドによりアクセス権を確認します。 %a:アクセス権の値 %n:ファイル名

ファイルを777(フルコントロール)にすることでファイルアクセスが可能になります。
以下コマンドを入力すればフルコントロールが可能になります。
sudo chmod 777 /var/www/html/.htaccess
これでファイル内の変更が可能です。
※変更をし、FTPにてダウンロードしようとしても以下エラーが発生する事があります。

この場合は、タイムスタンプの設定はできませんが、ファイル内は書き換わっています。
【番外編】GCPのコンソールで変更できる(Vim使用出来れば)
実はわざわざFTP接続しなくても、GCPのコンソールから変更する事ができました。
(僕はFTP接続した後に気付いてしまった…)
まずGCPの「VMインスタンス」から「SSH」をクリックしGCPのコンソールを起動します。
起動した後、以下コマンドを実行します
ls -a /var/www/html
これでWordPressの隠しファイルを含め「.htaccess」が存在する事を確認できます。

この中でvimエディタを起動して編集します。
(vimエディタをご存知ない方は他サイト様をご確認ください)
vim /var/www/html/.htaccess

上の画像は既に消去しておりますが、Vimにて以下の内容を削除すればOKです
WordPressのインストールディレクトリにある.htaccessの以下の記述を削除してください。
#SITEGUARD_PLUGIN_SETTINGS_START から
#SITEGUARD_PLUGIN_SETTINGS_END まで
https://www.jp-secure.com/siteguard_wp_plugin/faq/
これでFTP接続せずにWordPressにてログイン画面が開けます
始めからこの方法でやれば良かった…
Vimの操作方法が分かればこちらの方が早いです。
コメント