【完全初心者向け】Amazon Lightsail のphpMyAdminにセキュアに接続する方法【画像多数】

ブログ

・Amazon LightsailのphpMyAdminに接続したいんだけど。。

・色々調べて試したんだけど上手くphpMyAdminに接続できない

・ITスキルに自信がないので、画像が多いと嬉しいな

こういった疑問に答えます。

スポンサーリンク

【完全初心者向け】Amazon Lightsail のphpMyAdminにセキュアに接続する方法

Amazon LightsailにはデフォルトでphpMyAdminが設定されていますが、アクセスしようとする『For security reasons, this URL is only accessible using localhost (127.0.0.1) as the hostname.』となり、アクセスできません。

phpMyAdminを直接利用できるように設定を変更することもできますが、なぜ、デフォルトでphpMyAdminに接続が出来ないのかというと、やはりセキュリティ的に宜しくないということでしょう。

利用者側は安心は安心ですが、「では、どうやってphpMyAdminに接続するの?」となるかと思います。

これを解決する方法が、ターミナルソフトでポートフォワードを設定して接続する方法です。

自宅が固定IPサービスを利用していたり、企業の固定IPアドレスなどLightsailに接続するIPが固定されている場合には、設定を変更してしまうのも有りでしょう。

一方で、ターミナルソフトでポートフォワードを利用してLightsailのphpMyAdminに接続するメリットは、インスタンス側の設定は不要で、且つ、ターミナルソフトで接続中のみだけphpMyAdminに接続ができるため、セキュリティ的にも不安がありません。

phpMyAdminとは?

ところで、「そもそもphpMyAdminとは?」という方もいらっしゃるかと思いますので、少し解説します。

phpMyAdminは古くから人気のある、MySQLをウェブブラウザで管理できるツールで、PHPで実装されています。

ツールの名前から判断できるかと思いますが、『phpで実装された、mysqlを操作するadminツール』です。

phpMyAdminを利用することで、SQL文を記述することなくMySQLのデータベースに対して様々な操作が行えるだけでなく、ユーザが任意のSQL文を記述して実行することが出来ます。

やはり、データベースを画面操作(GUI)で操作できるツールは便利な一方、悪意のある攻撃があった場合にはデータベースを削除されてしまうことさえありますので、常にセキュリティを意識しておく方がよいでしょう。

なお同様のツールとしては以下があります。

  • phpPgAdmin (PgはPostgreSQLの略)
  • phpMSAdmin (MS はMicrosoft SQL Serverの略)
  • phpOracleAdmin (Oracleは、Oracle社のデータベースの略)

主にRDBMSの管理ツールですね。

Amazon Lightsail 上の phpMyAdmin への接続準備

Amazon Lighsailにターミナルソフト(PuTTY)で接続する方法はAmazonがしっかり解説してくれていますが、実はPuTTYで接続するよりもTera termで接続する方がステップが少なく簡単です。

PuTTY をダウンロードし、Amazon Lightsail で SSH を使用して接続するようにセットアップする | Lightsail ドキュメント

日本語がちょっと変ですね。

ということで、今回はTera termで接続する手順で解説します。

Tera Term をお持ちでない方は以下からどうぞ。

窓の杜
「Tera Term」定番のターミナルエミュレーター

SSHでの接続に必要な情報(事前準備)

接続には以下の情報が必要なので、先に確認しておきましょう。

  1. 接続先のLightsail のIPアドレスを確認
  2. Lightsail が起動しているリージョンの確認
  3. 接続するユーザ名(bitnami)のパスワードの確認

1. 2. はLightsailのコンソールにアクセスすると、簡単に確認ができます。

次に、オレンジのアイコンをクリックしてLightsailのインスタンスを起動します。

インスタンスを起動するとアカウント(bitnami)が確認できますので、以下のコマンドを実行してアカウントのパスワードを確認します。

# cat bitnami_application_password

赤枠がパスワードです。

以上で事前の確認項目は完了です。

次に、Tera termでLightsailに直接接続するためのSSHキーを準備します。

SSH プライベートキーのダウンロード

接続用のプライベートキーの入手法は2つあります。

  1. デフォルトのプライベートキーの利用
  2. プライベートキーを新たに作成

今回は1. デフォルトのプライベートキーを利用します。

プライベートキーは以下の手順で準備ができます。

先ほどと同様にLightsailのコンソールにアクセスし、右上の『アカウント』からメニューを表示させ、リストから『アカウント』を選びます。

表示された画面の『SSHキー』タブを選択すると、SSHキーのダウンロードができます。

今回使用しているLigitsailは東京リージョンのため、東京の『ダウンロード』を選択し、SSHキー『LightsailDefaultKey-ap-northeast-1.pem』をダウンロードします。

ダウンロードが完了したら、分かりやすいフォルダーに保存しておきましょう。

Tera termでLightsailのインスタンスに接続する

前段の準備が完了したら、Tera termでLightsailのインスタンスに接続します。

『Windowキー』を押し『ここに入力して検索』に『tera』と入力するとteraが付くアプリケーションが表示されますので、『tere term』を選択して『エンター』実行します。

Tera termが起動したら、先ほど調べておいたIPアドレスを入力して『OK』を選択します。

次に、ユーザ名(bitnami)とパスフレーズ(パスワード)、そして先ほどダウンロードしたSSHキーを選択して『OK』を選択します。

すると、Tera termでLighsailのインスタンスに接続が出来ます。

以上で、Tera termでの接続は完了です。

今後は、AWSコンソールにログインしなくてもLighsailのインスタンスに直接ログインできます。

ポートフォワードの設定とphpMyAdminへの接続

さて、本記事のメインであるphpMyAdminに接続します。

接続済みのTera termの『設定』『SSH転送』を選択します。

すると、SSHポート転送の画面が表示されるので『追加』を選択します。

次に『ローカルのポート』と『リモート側のポート』を設定します。

ここではそれぞれ、8888と443を設定しています。

設定したら『OK』を選択して完了です。

『OK』で設定を完了すると、設定した情報が以下のように反映されます。

設定が反映されていることを確認したら『OK』を選択します。

ポートフォワードの設定はこれで完了ですので、phpMyAdminに接続してみましょう。

以下のURLにブラウザからアクセスしてみましょう。

https://127.0.0.1:8888/phpmyadmin

遂にphpMyAdminの管理画面が表示されました。

ユーザ名は『root』、パスワードは『bitnamiのパスワード』を有力して『実行』を選択します。

無事、phpMyAdminに接続できました!

以上で完了です。

Tips

ポートフォワードを設定したにもかかわらず上手くphpMyAdminにアクセスできない場合には、ポート番号を8888から例えば10000番など違うポート番号にしていみるのも良いです。

https://127.0.0.1:10000/phpmyadmin/index.php

まとめ

今回は、Amazon Lightsailで利用できるphpMyAdminにセキュアに接続する方法を解説しました。

CLIでデータベースの操作に慣れている方はphpMyAdminは不要かもしれませんが、GUIの操作は直感的に操作が可能なため、利用できるなら利用した方が楽でしょう。

次回以降では、LighsailでのphpMyAdminの便利な利用方法をご紹介できればと思います。

本ブログでは今回のようなブログの小技をご紹介していますので、是非参考にして頂ければと思います。

ブログ
「ブログ」の記事一覧です。

タイトルとURLをコピーしました