[GCP] 無料ドメインのHTTPSサーバをGCEでつくる
無料ドメインのHTTPSサーバをGCEでつくってみました。
-
手順
- GCEインスタンスをつくる
- GCEにnginxをインストール
- nginxの設定
confファイルのserverディレクティブでhttps用の設定をします -
無料ドメインの取得
今回はこれを利用:feenom
ほかにもあるようなので、お好みでどうぞ
無料で独自ドメインの取得サービス6選|ferret -
freenomの場合
- ドメインの期限について
有効期間:3か月
更新手続:14日前から可能になる
- ドメインの期限について
- ssl証明書の取得
SSL証明書のインストール:Let's Encrypt - フリーな SSL/TLS 証明書- certbotを利用してssl証明書のインストールをシェルから行いました。freenomのマネジメントコンソールから、Aレコードの設定をしましたが、ドメインとIPが紐づくのにやや時間がかかるようでした。1日おいたところ、問題なくできました。
- certbotはACMEプロトコルで証明書の認証サーバと通信を行います。そのためssl証明書をインストールするサーバのhttpポートを開けておく必要があります。
- ACMEプロトコルについてはこちら Automated Certificate Management Environment - Wikipedia
この証明書は3か月間有効です。証明書を再認証するには
sudo certbot certonly
を実行すればよいようです。
あるいはcertbotの自動更新の設定が可能です。
下記コマンドを実行することで、証明書の有効期限の1か月前が来ると、証明書の自動再更新のcronが動作します。
sudo certbot renew --dry-run
certbotの自動更新コマンドは下記のうちのいずれかひとつにインストールされるようです
/etc/crontab/
/etc/cron.*/*
systemctl list-timers
私の環境の場合には/etc/cron.d/certbotに下記のように設定されていました
期限の30日前になったら、自動更新用のcertbotが起動するようです。