たのしい工学

プログラミングを学んで、モノをつくりたいひと、効率的に仕事をしたい人のための硬派なブログになりました

[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が起動するようです。

 - GCP , ,