AWS（EC2）でwordpressとphpmyadminをサクッと立ち上げる

AWS（EC2）では、WordPress＋phpmyadminのマシンイメージが用意されています（MarketPlace）。イメージを利用すれば、サクっと立ち上げてphpmyadminまで直ぐに使えてテスト等に便利です。ここでは、およそ10分（＋待ち時間5分）でphpmyadminへ最速でアクセスする迄の手順をご紹介します。

# 事前に用意するもの
awsアカウント（無料枠で十分）
putty / puttygen（他のターミナルでもOKです）

# インスタンス作成

まず、EC2インスタンスを作成します。「インスタンス作成」ボタンを押し、「ステップ 1: Amazon マシンイメージ (AMI)」画面で「AWS Marketplace」→検索窓で「wordpress」→「WordPress Certified by Bitnami and Automattic」で「選択」ボタンを押します。
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/a10bf567-9f25-c949-9a29-f6716d39c088.png)

確認画面で「Continue」を選択します。
![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/92e91c9a-6abb-bb9b-4cf3-0842f73f358f.png)

次の「ステップ 2: インスタンスタイプの選択」では、「t2.micro」（無料利用枠の対象）を選択→右下の「次のステップ：インスタンスの詳細の設定」を選択します。
![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/1adadb7b-a620-0c03-c3a4-640d2f6b5c83.png)

「ステップ 3: インスタンスの詳細の設定」では色々設定できますが、今回はそのまま右下の「次のステップ：ストレージの追加」を選択します。
![04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/c48c21dd-b2ab-e437-6b94-59db16849535.png)

「ステップ 4: ストレージの追加」では、無料枠では30GBまで追加する事が出来ます。ここでは、10GBのままで「次のステップ：tagの追加」を選択します。
![05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/7960f262-8696-1833-2fcb-a01eedbdca96.png)

「ステップ 5: タグの追加」では、ここでは何もせず「次のステップ：セキュリティグループの設定」を選択します。
![06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/39af89d8-c180-08f7-af16-96d694a81fe2.png)

「ステップ 6: セキュリティグループの設定」では、必要に応じて設定を変更して下さい。例えば「SSH」は、ソースを「マイ IP」に変更する事で、自分のPCからのみSSH接続・メンテナンス出来る様になります。ここでは何もせず「確認と作成」を選択します。
![07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/f52d1b60-dbf2-cb84-aeec-f25c93b7ccbf.png)

「ステップ 7: インスタンス作成の確認」で、「起動」を選択し、インスタンスを作成・起動します。
![08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/d8b2fc38-9096-bfd8-0fc8-3e8f0d4ec678.png)

起動すると、次の画面で、インスタンスへ接続する為のキーペア作成画面になります。既に他のインスタンスを作成している方は同じキーペアでアクセスできる様に設定してもいいし、このインスタンス様に新たにキーペアを作成してもいいです。ここでは、「新しいキーペアの作成」を選択し、キーペア名を「TestWP1」とします。

「キーペアのダウンロード」をクリックして、秘密鍵ファイル「TestWP1.pem」をダウンロードして、大切に保管して下さい。

そして最後に、「インスタンスの作成」を選択します。
![15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/68be8f09-e042-08c0-e248-ae5c18d5146e.png)

インスタンスが無事起動したら、インスタンスの状態が「running」になるまで暫く待ちます（約5分）。また、IPv4パブリックIPにIPアドレスが表示されるので、このIPアドレスをメモしておいて下さい。
![09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/6afaf0ec-90b8-21ec-a69e-bf95ecbab20b.png)


# wordpressへアクセス
インスタンスが起動したので、まずはwordpressへアクセスしてみましょう。ブラウザに、先ほどのIPアドレスをコピペしてアクセスしてみて下さい。
http://13.115.249.35/

下記の様な画面が表示されれば成功です。
![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/b327f7bb-8835-367c-630f-9dea6713cc52.png)


#wordpress管理画面へアクセス
次にwordpress管理画面へアクセスしてみます。ログインに必要な初期ID/PWはログに出力される仕組みになっているので、ログを確認します。立ち上げたインスタンスを選択し、「アクション」ボタン→「インスタンスの設定」→「システムログの取得」を選択します。
![11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/f9cb7b0b-731c-d686-c35b-c90237128b0a.png)

すると、ログ画面が表示されます。
![12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/41dcdcea-ecd5-f7de-910f-7b8193497f17.png)
この中に、wordpressのログインID・PWが含まれているので、メモして下さい。

```
[   32.129991] bitnami[1179]: #########################################################################
[   32.144958] bitnami[1179]: #                                                                       #
[   32.156752] bitnami[1179]: #        Setting Bitnami application password to 'PC**qMK****0'         #
[   32.166552] bitnami[1179]: #        (the default application username is 'user')                   #
[   32.181094] bitnami[1179]: #                                                                       #
[   32.193026] bitnami[1179]: #########################################################################
```


ブラウザでwordpress管理画面へアクセスしてみましょう。IPアドレスが13.115.249.35なら、ブラウザへ以下の様に貼り付けます。
http://13.115.249.35/wp-admin/
下記画面が表示されたら、先ほどログ画面から取得したログインID・PWを入力し、「Log in」を選択します。
![13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/2c556de2-8145-816e-2e62-745fde5e90c3.png)

下記の様な画面が表示されれば、wordpress管理画面へのログインは成功です。
![14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/487d97e2-312b-f7ee-405d-881213fbd5ac.png)

# 秘密鍵のフォーマットを変換（「.pem」→「.ppk」）

ここではPuttyを使うので、秘密鍵のフォーマットを「.pem」から「.ppk」へ変換します。

まず、puttygenを起動し、「File」→「Load private key」を選択します。
![16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/fac22a6b-5642-0898-d19e-87da0083f0d5.png)

※ファイル選択する際は、右下のプルダウンメニューから「All Files (*.*)」を選んでから、対象の秘密鍵ファイル（ここでは「TestWP1.pem」）を選択します。
![17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/2e09b1a0-c931-fbbc-129b-0999736c60d8.png)

※選択すると通知画面が出てくるので、そのまま「OK」を選択します。

次に、「File」→「Save private key」を選択します。
![18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/4a4d66c0-2a7a-cdcc-65fd-dc183a289970.png)

※選択すると警告画面（パスフレーズ無くていいの？）が出ますが、ここではそのまま「はい」を選択します。

あとはファイル名を指定して、秘密鍵（.ppk）を保存しましょう。
![19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/47597bd3-b068-1566-5e61-e62bd2cbc60e.png)


# phpmyadminへ接続する
このマシンイメージは、phpmyadminへ直接接続できない様に設定されています。その為、ここではputtyのトンネル機能を使って接続してみます。

まず、Puttyを起動し、Category「Session」で、「Host Name (or IP Address)」に、インスタンスのIPアドレスを設定します。
![20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/2d0930dd-aeeb-1266-b2d4-1212ce744802.png)

次に、Category「Connection」→「Data」で、「Auto-login username」に、「bitnami」（ubuntuでもOK）を設定します。
![21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/e9d2c4d3-c51f-34ae-c519-a26d991a918a.png)

次に、Category「Connection」→「SSH」→「Auth」で、「Private Key file for authentication:」の「Browse..」ボタンを押して、秘密鍵（この例では「TestWP1.ppk」）を設定します。
![22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/e6b65a7f-b887-47a3-8608-1812caca1d38.png)

最後に、Category「Connection」→「SSH」→「Tunnels」で、「Source port」に「8888」を入力し、「Destination」で「localhost:80」を入力してから、「Add」ボタンを押します。すると「Forwarded ports:」に「L8888  localhost:80」と表示されます。
![23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/204f69c2-1745-61da-dfb6-0ab2a7223eb5.png)

これで設定完了です。最後に右下の「Open」をクリックし、接続しましょう。

うまく接続できると、下記の様な画面が表示されます。
![24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/933ffb1b-4c00-c2d2-6c95-1a86bc9bea8a.png)

puttyで上記接続したままの状態で、ブラウザから下記（localhost）にアクセスします。
http://localhost:8888/phpmyadmin/

phpmyadminログイン画面が表示されれば、Tunnel接続は成功しています。
![25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/14615404-b7fa-b031-d513-a9f7b9d82a7e.png)

ユーザー名は「root」（userじゃないので注意）、パスワードは、wordpressの管理画面で使用した同じパスワードを指定してログインしてください。

ログインできたら成功です。
![26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/280104/05fdfda0-771e-2777-1421-84ab5351942c.png)

# 終わりに
[BitnamiのYoutube動画](https://youtu.be/9VdcQLDmYII)より方法を紹介しました。
わざわざSSH接続を維持しなければphpmyadminに接続できない仕組みは一見面倒ですが、wordpressの心臓部であるDBへは気軽にアクセスできない様にセキュリティ対策が施されているのでしょう。puttyで接続設定を保存しておけば以後簡単に接続できるのでそんなに手間は掛からないと思います。