第10回 【WordPress】 GCP phpMyAdminのログインURLを変更する セキュリティ対策

WordPress GCP

1. 第10回 【WordPress】 GCP phpMyAdminのログインURLを変更する セキュリティ対策

環境:Debian 9 php 7.0 Apache 2.4.25 MySQL 5.7 Cocoon

目的:外部から「phpMyAdmin」にアクセスしにくくさせる

「phpMyAdmin」のログインURLを変更しないと誰でも簡単に「ログインURL」にアクセスできてしまうという問題点があります。

  • 「例、http://IPアドレス/phpmyadmin/」
  • 「例、http://独自ドメイン/phpmyadmin/」

WordPressの管理画面のURLを変更するのと同様の効果が期待できると思います。

「phpMyAdmin」には何が入っているのか

WordPressのデータベースなので、結構良い情報が詰まっています。

「MySQL」や「MariaDB」などといったデータベース環境です。

  • 投稿ページ 本文など
  • 固定ページ 本文など
  • カテゴリーやタグ情報など

テキスト系の人たちがたくさんいます。

一方、

「Apache」「Nginx」「IIS」「LiteSpeed」などは「Webサーバー」で、プログラムを動作させています。その中にテーマやメディアファイルなども含まれています。

パソコンにも引き出しあるんだな。そうやって持っていくんだ。なるほど。

とにかく「phpMyAdmin」には簡単にアクセスしてもらいたくはないはずです。

では、ログインURLの変更作業をしていきます。

手順の流れ
  • WinSCP
    「Webサーバー」にログイン

    GCPではVMインスタンス

  • WinSCP
    「phpmyadmin.conf」編集

    このファイルがどこにあるのかを見つける

  • ブラウザ
    「phpmyadmin」アクセスして確認

1.1 「phpMyAdmin」にアクセス

そもそも「phpMyAdmin」にアクセスできないようであれば、すでに問題です。

あるいは、アクセスできなかったけれど、アクセスできるように解決できたぞー。

どちらかになるかと思います。

「GCP」ではデプロイ完了画面の右下にリンクがあります。すでに「外部IPアドレス」が変更されていれば、下記のリンクでもアクセスはできません。

「phpMyAdmin」のログインURLを変更した覚えがなければ、下記のどちらかの「ログインURL」でアクセスできると思います。

  • 「例、http://IPアドレス/phpmyadmin/」
    
  • 「例、http://独自ドメイン/phpmyadmin/」

1.2 「phpMyAdmin」ログイン画面

なんなら、一度ログインして「ユーザー名」「パスワード」があっているかも確かめても良いと思います。

1.3 「Webサーバー」にログイン

さて、ここからが本題です。

「WinSCP」を起動して、「ログイン」して次へ進みます。

1.4 Apache 2.4 の場合

第7回で権限設定の編集を行なった「apach2.conf」が存在する「/etc/apache2」のディレクトリに「conf-enabled」というディレクトリがあります。

この「conf-enabled」ディレクトリへ進みます。

1.5 「phpmyadmin.conf」発見

もしこの場所に存在しなかったら「ファイル検索」で「phpmyadmin.conf」あるいは「phpmyadmin」などで検索してみてください。

  • 「phpmyadmin.conf」をローカルの「WordPress設定ファイルデフォルト」フォルダにコピーして元に戻せるように保存します。
  • 「phpmyadmin.conf」をローカルの「WordPress設定ファイル」フォルダにコピーして編集できるようにします。

この2つの準備が整ったら、次へ進みます。

1.6 「phpmyadmin.conf」編集

実際の編集は結構簡単なものです。下記画面のように

「この部分を好きなURLに変更するとtokyo2020.org/〇〇△△XX」のようになる

と記載しているところを編集します。画面では最後に「半角スペース」が入っていませんので危険ですね。

  1. デフォルトでは「Alias /phpmyadmin /usr/share/phpmyadmin」になっています。
  2. 「Alias /phpmyadmin /usr/share/phpmyadmin」の赤字部分を編集します。
  3. 「Webサーバー」の再起動を忘れずにします。

実際のコードです。

編集前

# phpMyAdmin default Apache configuration

Alias /phpmyadmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>

編集後

# phpMyAdmin default Apache configuration

Alias /saishohaguuacchimuitehoi /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>

Webサーバー再起動
GCPの場合、「メニュー」「Compute Engine」「該当のVMインスタンス」の横「SSH」をクリックして「SSH」を起動します。

$ sudo service apache2 restart
注意点

「GCP」「Debian 9」「Apache 2.4」の環境ではすぐに反映しませんでした。反映するまでに長いと2日間程かかりました。反映するまでは、変更前のURLでログインができました。変更前のURLでログインができなくなった段階で、変更後のログインURLが確認できました。

1.7 「phpmyadmin」アクセスして確認

編集後のログインURLをブラウザでアクセスして確認します。

  • 「例、http://IPアドレス/saishohaguuacchimuitehoi/」
  • 「例、http://独自ドメイン/saishohaguuacchimuitehoi/」

これにアクセスして「phpMyAdmin」のログインURLが表示されれば変更完了です。念の為、ログインもできることを確認することをお勧めします。

1.8 もう一つ確認

編集前のログインURLをブラウザでアクセスして確認します。

「404 not found」のページが表示されれば問題ありません。

GCPではデプロイ完了画面の右下部分のリンクでも確認してみてください。

1.9 最後に

「phpMyAdmin」のログインURL変更は結構簡単ですが、手順通りきちんと行わないと

  • 「phpMyAdmin」にアクセスできない
  • 「WordPress管理画面」になぜかアクセスできない

こういった場面に遭遇してしまいます。基礎的なファイルの設定変更前には必ずバックアップを取って、以前の状態に戻せるようにしてからが安全です。

編集を誤って、バックアップを取っていなかった時の悲壮感は計り知れないものがあります。


次は、第11回です。


【コメント】 ※「メールアドレス不要」