Lightsail環境下でのSSL/TLS証明書自動更新

Lightsail環境下で、無償のSSL/TLS証明書を自動更新する手順を健忘禄としてメモ。

2022/3/31 証明書の鍵長の疑問へ追記。

2022/2/1 証明書の誤発行対応を追記。

/opt/bitnami/letsencrypt/renew-certficate.sh を以下の内容で作成する。

#!/bin/bash

sudo /opt/bitnami/ctlscript.sh stop apache

sudo /opt/bitnami/letsencrypt/lego --tls --email="管理者メールアドレス" --domains="ドメイン名" --path="/opt/bitnami/letsencrypt" renew

sudo mv /opt/bitnami/apache2/conf/server.crt /opt/bitnami/apache2/conf/server.crt-OLD
sudo cp /opt/bitnami/letsencrypt/certificates/ドメイン名.crt /opt/bitnami/apache2/conf/
server.crt

sudo mv /opt/bitnami/apache2/conf/server.key /opt/bitnami/apache2/conf/server.key-OLD
sudo cp /opt/bitnami/letsencrypt/certificates/ドメイン名.key /opt/bitnami/apache2/conf/
server.key

sudo /opt/bitnami/ctlscript.sh start apache

作成したshellは単独で動作を確認する。

クローンへ登録する

/var/spool/cron/root.lst を以下の内容で作成する

30 14 1 02,04,06,08,10,12 * /opt/bitnami/letsencrypt/renew-certficate.sh >> /home/bitnami/renew-cert.txt

sudo crontab -l

sudo crontab -r

sudo crontab < root.lst

後は、実際にクローンが実行され、証明書が更新される事を確認する。

※:証明書は30日以上経過していないと更新されないので、30日以上経過しての動作を確認する事!!

※2:2021/12/3追記 証明書のKeyサイズが256。これを4096に変更しようとしたが、反映されない。要調査の事。(その内確認します) <-2022/3/31 確認した。現状で問題が無い事が確認出来たので現状のままとする。詳細は別投稿へ記載。

DNSの登録情報を確認する方法。以下のURLで確認出来る(AWSの説明に紹介されているサイト)。

DNS Lookup Text Record - MxToolbox

※3:2022/2/1 証明書の検証方法に仕様違反が有り、証明書が取り消されたので更新した。

 2022/1/28 16:00 (UTC時間なので、29日 1:00(AM)が日本時間)に証明書が無効になるとメールが届いた。メールは、1/26に届いている。これ、”TLS-ALPN-01検証方式を使ってLet's Encryptから発行されたTLS証明書”を使用しているサイトで、誤発行と見なすとの対応になるみたい。2019年とか、同じような話が有ったはず。

 今回、期限を過ぎると、どのような動きをするのか確認した(要は証明書を更新せずに期限が過ぎるのを待った)。結果は以下(代表的な物のみ記載)。

 a)ESETとか、セキュリティソフトが入った環境では、セキュリティソフトがブロックする。

 b)iPhone では、ブラウザがブロックする。

 c)セキュリティソフト無し(ESET等の事。Defenderは有効になっており機能している)だと、Windows10+Edge は何の問題も無くアクセス出来る。証明書も問題無しと表示され、内容詳細も無効になる前と全く同じ(つまり、無効な証明書と判断が出来ない)。 <ーこれ、良いのか????

 対応は、証明書の更新を実施でOK(通常の期限切れ(普通は90日で切れる)と同じ更新方法で)。但し、残の有効期限が30日を超える場合は強制的に再発行が必要(これは仕様で、今回のように、無効になった後でも(29日を過ぎて(JST)いても、有効期限が30日を超えると再発行されない)同様の動きだった)。

 <参考:届いたメール本文>

Hello,

Please immediately renew your TLS certificate(s) that were issued from 
Let's Encrypt using the TLS-ALPN-01 validation method and the following 
ACME registration (account) ID(s):

 129393320 

We've determined that an error made it possible for TLS-ALPN-01 
challenges, completed before today, to not comply with certificate 
issuance requirements. We have remediated this problem and will revoke 
all unexpired certificates that used this validation method at 16:00 UTC 
on 28 January 2022. Please renew your certificates now to ensure an 
uninterrupted experience for your site visitors.

We apologize for any inconvenience this may cause. If you need support 
in the renewal process, please comment on our forum post. Our staff and 
community members are available to help:

Questions about Renewing before TLS-ALPN-01 Revocations
UPDATE 08 February 2022: The rate limit adjustments have been reverted to normal conditions. You can read about our rate limits here. UPDATE 29 January 2022: We...
Thank you, The Let's Encrypt Team If you are receiving this email in error, unsubscribe at: http://delivery.letsencrypt.org/track/unsub.php?u=30850198&id=5c0a35b5472949619110d2fcf57752d5.5MIcVwCUXM%2Fc3rNh%2Bh2d8NcDT9s%3D&r=https%3A%2F%2Fmandrillapp.com%2Funsub%3Fmd_email%3Dh%252A%252A%252A%252A%2540c%252A%252A%252A%252A.%252A%252A%252A Please note that this would also unsubscribe you from other Let's Encrypt service notices, like expiration reminders.

 

コメント

PAGE TOP