以下に、自動更新の設定手順を追加した完全版を記載します。
AWS Lightsail を使った WordPress サイト構築手順
1. AWSアカウントの準備
まず、AWSアカウントを作成します。
- AWS公式サイトからアカウントを作成またはログインします。
- 請求情報(クレジットカード)を登録し、利用準備を完了させます。
2. Lightsailインスタンスの作成
AWS Lightsailでは、WordPressのテンプレートを使った簡単なインスタンス作成が可能です。
- AWS管理コンソールで「Lightsail」を検索して開きます。
- **「インスタンスを作成」**をクリックします。
- 以下の設定を行います:
- プラットフォーム: Linux/Unix を選択
- 設計図 (Blueprint): 「WordPress」を選択
- インスタンスプラン: サイト規模に応じたプランを選択(初めての場合は最安プランがおすすめ)
- インスタンス名: 任意の名前を入力
- **「インスタンスの作成」**をクリックします。
3. インスタンスのセットアップ
インスタンスが作成されたら、以下の手順を行います。
- Lightsailの管理画面で作成したインスタンスを選択します。
- **「接続」**タブからブラウザベースのSSHクライアントを起動します。
4. WordPressの初期設定
SSH接続を使い、WordPressの管理画面にログインするための準備を行います。
1. 管理者パスワードの確認
SSHクライアントで以下のコマンドを実行して、管理者パスワードを取得します:
cat /home/bitnami/bitnami_application_password
表示されたパスワードをコピーして保存します。
2. 管理画面にログイン
ブラウザで以下のURLにアクセスします:
http://<LightsailインスタンスのパブリックIP>/wp-admin
-
ユーザー名:
user
- パスワード: 取得したパスワード
ログイン後、WordPressの管理画面が表示されます。
5. ドメイン設定(任意)
Lightsailではドメイン設定も簡単に行えます。
1. 静的IPの作成
Lightsailの「ネットワーキング」タブで**「静的IP」**を作成し、インスタンスに割り当てます。
2. DNS設定
ドメインプロバイダーで以下を設定します:
- Aレコード: Lightsailの静的IPアドレスを指すように設定
6. SSL証明書の設定(HTTPS化)
1. bncert-tool を使ったSSL証明書の設定
-
SSH接続
LightsailインスタンスにSSHで接続します(Lightsail管理画面の「接続」タブからブラウザベースのSSHクライアントを使用可能)。 -
bncert-toolの実行
次のコマンドを実行して、BitnamiのSSL設定ツールを起動します:sudo /opt/bitnami/bncert-tool
-
ツールのプロンプトに従う
プロンプトに従って以下の情報を入力します:-
ドメイン名: 設定するドメイン(例:
example.com
とwww.example.com
) - メールアドレス: 証明書の期限通知などを受け取るためのメールアドレス
- リダイレクト設定: HTTPからHTTPSへのリダイレクトを有効化するか(通常は「はい」を選択)
-
ドメイン名: 設定するドメイン(例:
-
設定完了
HTTPSが有効になります。ブラウザから以下のURLにアクセスして確認します:https://<ドメイン名>
2. SSL証明書の自動更新
Let’s Encryptの証明書は90日間有効です。期限が切れる前に自動更新を設定するには、以下の手順を確認・実行します。
自動更新ジョブの設定・確認
以下のコマンドを実行して自動更新を設定します:
sudo crontab -e
エディタが開いたら、以下の内容を追加します:
0 0 * * * /opt/bitnami/letsencrypt/lego --tls --email="your-email@example.com" --domains="example.com" --domains="www.example.com" --path="/opt/bitnami/letsencrypt" renew >> /opt/bitnami/letsencrypt/renew.log 2>&1 && /opt/bitnami/ctlscript.sh restart
保存して終了します。
次のコマンドで自動更新のcron
ジョブが設定されているか確認します:
sudo crontab -l
出力例:
0 0 * * * /opt/bitnami/letsencrypt/lego --tls --email="your-email@example.com" --domains="example.com" --domains="www.example.com" --path="/opt/bitnami/letsencrypt" renew >> /opt/bitnami/letsencrypt/renew.log 2>&1 && /opt/bitnami/ctlscript.sh restart
3. 証明書更新の確認
次のコマンドで現在の証明書の有効期限を確認できます:
openssl x509 -in /opt/bitnami/letsencrypt/certificates/example.com.crt -text -noout | grep "Not After"
出力例:
Not After : Feb 28 12:00:00 2025 GMT
トラブルシューティング
-
更新エラーが発生した場合
lego
ツールのエラーログを確認して問題を特定します:cat /var/log/letsencrypt/renewal.log
-
通知メール
証明書期限が近づくとLet’s Encryptから通知メールが届きます。登録したメールアドレスを適切に管理してください。