AWS EC2 Antigravity CLIでLet's EncryptのSSL証明書を取得してhttpsを設定する方法
前提条件
はじめに
本記事では、Antigravity CLIを使って日本語の指示だけで
AWS EC2にLet's EncryptのSSL証明書を取得して
httpsを設定する手順を実機検証を交えて解説します。
動作環境
| 項目 | 説明 |
|---|---|
| 操作元サーバー | Amazon Linux 2023(test-server) t3.micro (Antigravity CLIを動かすサーバー) |
| 対象サーバー | Amazon Linux 2023(test-server2) t3.micro (Antigravity CLIが作成するサーバー) |
| リージョン | ap-northeast-3(大阪) |
ApacheとHTTP(80番)・HTTPS(443番)の設定
Apacheのインストールと80番・443番の開放が完了していることが前提です。
詳細は以下の記事をご参照ください。
DNSの設定
対象EC2のパブリックIPをドメインのAレコードに登録します。
Let's Encryptの証明書取得にはDNSが正しく設定されている必要があります。
| レコード | 値 |
|---|---|
| ホスト名 | www.d1j.jp |
| タイプ | A |
| 値 | EC2のパブリックIP |
事前に下記の内容を参考にAntigravity CLIをインストールしてください。
対象サーバーも作成してください。以下の内容を参考にしてください。
certbot SSL証明書を取得 https設定をする
1. Antigravity CLIがインストールされている操作元サーバーで実行してください。
下記のコマンドを実施してください。(一般ユーザーで実施してください。)
| コマンド | 説明 |
|---|---|
| $ agy | Antigravity CLIを実行いたします。 |
| 「SSHでtest-server2にログインしてcertbotをインストールし、www.d1j.jpのSSL証明書を取得してhttpsの設定をしてください。certbot --apacheで自動設定をお願いします。」 と入力してください。 | Antigravity CLIに指示をいたします。 |

certbotのインストールからSSL証明書取得、HTTPS設定までを完了しました。

動作確認
2. ブラウザーでドメイン名を入力して確認いたしましょう。
鍵マークが表示され、httpsで正常にアクセスできれば完了です。

3. 自動更新タイマーの設定はコマンドでも確認できます。
対象サーバーにSSHでログインし、下記のコマンドを実施してください。
| コマンド | 説明 |
|---|---|
| $ sudo -i | rootユーザーに昇格いたします。 |
| # systemctl is-enabled certbot-renew.timer | 自動更新タイマーが有効になっているか確認いたします。 「enabled」と表示されれば問題ありません。 |

注意事項
| 項目 | 説明 |
|---|---|
| DNS設定 | 証明書取得前にDNSのAレコードを正しく設定すること。 |
| 80番・443番 | Let's Encryptの検証に80番と443番両方が必要。 |
| 自動更新 | certbot-renew.timerが有効化されていることを確認すること。 |
| 証明書の有効期限 | Let's Encryptは90日間有効、自動更新タイマーで更新される。 |
まとめ
・DNS設定とセキュリティグループ(80・443番)の開放が事前準備として必要。
・日本語の指示だけでcertbotのインストールからSSL証明書取得、https設定までが完了できる。
・certbot-renew.timerで90日ごとの証明書更新も自動化される。
以上で「AWS EC2 Antigravity CLIでLet's EncryptのSSL証明書を取得してhttpsを設定する方法」を完了いたします。

