明けましておめでとうございます。
本年もよろしくお願いいたします。
今年も週に1本以上の記事を書けるよう頑張っていきたいと思います。

◆はじめに
Let’s Encryptチームから証明書の有効期限切れ通知メールを受信して残りも5日を切ったので、更新をしました。
◆手動更新について
過去記事「Let’s EncryptワイルドカードSSLサーバ証明書更新」に自動更新できない理由などを書いていますので参考にしてください。
◆公式情報等
詳細のドキュメント等:
Let’s Encrypt 公式ドキュメント
◆更新要領
# certbot certonly --manual --preferred-challenges dns -d *.maruweb.jp.net -m XXXX@mail.com --agree-tos
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Renewing an existing certificate for *.maruweb.jp.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please deploy a DNS TXT record under the name:
_acme-challenge.maruweb.jp.net.
with the following value:
7BYP3JScSmGZQxnqZfJzVXnxNPaosr_VT5J3NguQWZs
Before continuing, verify the TXT record has been deployed. Depending on the DNS
provider, this may take some time, from a few seconds to multiple minutes. You can
check if it has finished deploying with aid of online tools, such as the Google
Admin Toolbox: https://toolbox.googleapps.com/apps/dig/#TXT/_acme-challenge.maruweb.jp.net.
Look for one or more bolded line(s) below the line ';ANSWER'. It should show the
value(s) you've just added.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Press Enter to Continue
1行目:certbotコマンドの実行
※細部オプションは、certbotコマンドのユーザガイドまたはcertbot –help allコマンドで
確認できます
8行目:_acme-challenge.maruweb.jp.net.:DNSレコードに追加する際のホスト名
12行目:DNSレコードに追加する認証トークンの値
22行目:[Press Enter to Continue]が、表示された状態で一時停止して、12行目の値をDNSにTXTレコードとして修正します
※更新の場合は、既にTXTレコードを追加してあるので値のみ変更
DNSレコードの反映にタイミングにより、時間がかかる(私の環境は、お名前.comを利用)ため、もう1枚ターミナルを起動して確認します。
・nslookupコマンドによる確認
# nslookup -type=TXT _acme-challenge.maruweb.jp.net
Server: 210.134.55.219
Address: 210.134.55.219#53
Non-authoritative answer:
_acme-challenge.maruweb.jp.net text = "7BYP3JScSmGZQxnqZfJzVXnxNPaosr_VT5J3NguQWZs"
Authoritative answers can be found from:
maruweb.jp.net nameserver = 02.dnsv.jp.
maruweb.jp.net nameserver = 04.dnsv.jp.
maruweb.jp.net nameserver = 01.dnsv.jp.
maruweb.jp.net nameserver = 03.dnsv.jp.
01.dnsv.jp internet address = 157.7.32.53
02.dnsv.jp internet address = 157.7.33.53
03.dnsv.jp internet address = 157.7.34.53
04.dnsv.jp internet address = 157.7.35.53
01.dnsv.jp has AAAA address 2400:8500:3300::53
03.dnsv.jp has AAAA address 2400:8500:3000::53
04.dnsv.jp has AAAA address 2400:8500:3fff::53
・digコマンドによる確認
# dig _acme-challenge.maruweb.jp.net TXT
; <<>> DiG 9.16.23-RH <<>> _acme-challenge.maruweb.jp.net TXT
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27645
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 8
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 9c56e662863ad931cf307d416777de7fc730b757156596a1 (good)
;; QUESTION SECTION:
;_acme-challenge.maruweb.jp.net. IN TXT
;; ANSWER SECTION:
_acme-challenge.maruweb.jp.net. 3600 IN TXT "7BYP3JScSmGZQxnqZfJzVXnxNPaosr_VT5J3NguQWZs"
;; AUTHORITY SECTION:
maruweb.jp.net. 2957 IN NS 03.dnsv.jp.
maruweb.jp.net. 2957 IN NS 02.dnsv.jp.
maruweb.jp.net. 2957 IN NS 04.dnsv.jp.
maruweb.jp.net. 2957 IN NS 01.dnsv.jp.
;; ADDITIONAL SECTION:
01.dnsv.jp. 908 IN A 157.7.32.53
02.dnsv.jp. 2208 IN A 157.7.33.53
03.dnsv.jp. 1607 IN A 157.7.34.53
04.dnsv.jp. 1607 IN A 157.7.35.53
01.dnsv.jp. 908 IN AAAA 2400:8500:3300::53
03.dnsv.jp. 2582 IN AAAA 2400:8500:3000::53
04.dnsv.jp. 2582 IN AAAA 2400:8500:3fff::53
;; Query time: 12 msec
;; SERVER: 210.134.55.219#53(210.134.55.219)
;; WHEN: Fri Jan 03 21:56:31 JST 2025
;; MSG SIZE rcvd: 366
nslookupまたはdigコマンドでDNSレコードに編集設定したTXTレコードの値が確認できたら、元のターミナルに戻って[Enter]キーを押下し、継続します。
Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/maruweb.jp.net/fullchain.pem
Key is saved at: /etc/letsencrypt/live/maruweb.jp.net/privkey.pem
This certificate expires on 2025-04-03.
These files will be updated when the certificate renews.
NEXT STEPS:
- This certificate will not be renewed automatically. Autorenewal of --manual certificates requires the use of an authentication hook script (--manual-auth-hook) but one was not provided. To renew this certificate, repeat this same certbot command before the certificate's expiry date.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you like Certbot, please consider supporting our work by:
* Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
* Donating to EFF: https://eff.org/donate-le
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1行目:証明書の受信に成功した場合のメッセージ
4行目:証明書の有効期限
◆証明書ファイル等の確認
更新された証明書等のファイルの確認
# ll /etc/letsencrypt/live/maruweb.jp.net/
total 4
-rw-r--r-- 1 root root 692 Oct 9 14:09 README
lrwxrwxrwx 1 root root 38 Jan 3 16:30 cert.pem -> ../../archive/maruweb.jp.net/cert2.pem
lrwxrwxrwx 1 root root 39 Jan 3 16:30 chain.pem -> ../../archive/maruweb.jp.net/chain2.pem
lrwxrwxrwx 1 root root 43 Jan 3 16:30 fullchain.pem -> ../../archive/maruweb.jp.net/fullchain2.pem
lrwxrwxrwx 1 root root 41 Jan 3 16:30 privkey.pem -> ../../archive/maruweb.jp.net/privkey2.pem
◆Nginxの設定再読み込み
# systemctl reload nginx
◆証明書の確認
ブラウザで証明書を確認します

ワイルドカード証明書で、有効期限も更新されているのが確認できました。
また、次は約90日後の更新…