サーバ証明書更新自動化マニュアル
2026年3月からは発行日から200日
2027年3月からは発行日から100日
2029年3月以降は発行日から47日
と徐々に短くなります。
手動更新を継続すると、非常に手間がかかることになりますので、早めの自動化をお勧めします。
ここでは、ACMEという仕組みを利用してサーバ証明書を自動更新するための方法を解説します。
目次
HTTP-01チャレンジ方式
該当サーバのhttp(80ポート)、https(443ポート)が外部に対して開いている必要があります。
Linux
certbotの準備
certbotはsnap版の動作が安定しているため、snap版でのインストール方法を解説します。
- snapインストール
- snapdをsystemtlに登録・有効化
- snapコマンドを使えるようにシンボリックリンク作成
- snapでcertbotをインストール
- certbotコマンドを使えるようにシンボリックリンク作成
sudo dnf install snapd -y RedHat系
sudo apt install snapd -y Debian系
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
certbot実行~証明書登録作業~
-
NIIから発行されたコマンド(情報システム課が提供したコマンド)をそのまま実行
sudo certbot --server https://secomtrust-acme.com/acme/ --eab-hmac-key XXXXXXXXXXXXXXXXXXX --eab-kid XXXXX -d ○○.yamanashi.ac.jp --key-type rsa
質問が来るので、以下の通り対応します。
・apacheか、nginxかを選択し番号をEnter
・email:何も入力せずEnterで問題ありません
・Do you agree?:YでEnter
上記で自動的にconfファイルに証明書情報が書き換えられて、webサーバがリロードされます。
- まず以下のコマンドで証明書だけを取得します。
- 取得に成功すると、以下のように証明書・秘密鍵のパスが表示されます。
- 証明書を指定するconfファイル(ssl.conf等)を設定します。
- webサーバをリロードすると新しい証明書が適用されます。
sudo certbot certonly --webroot -w ドキュメントルート --server https://secomtrust-acme.com/acme/ --eab-hmac-key XXXXXXXXXXXXXXXXXXX --eab-kid XXXXX -d ○○.yamanashi.ac.jp --key-type rsa
※ドキュメントルートはwebサーバにて設定しているconfファイルのDocumentRootの行を参照してください。
Certificate is saved at: /etc/letsencrypt/live/docs.yamanashi.ac.jp/fullchain.pem
Key is saved at: /etc/letsencrypt/live/docs.yamanashi.ac.jp/privkey.pem
※中間証明書は証明書ファイル(fullchain.pem)に含まれますので、中間証明書を別途confファイルで指定している場合は、その行を削除・またはコメントアウトしてください。
確認作業
証明書確認
証明書を使用しているサーバ(ウェブサイト等)にアクセスして、取得した証明書が適用され、エラーが起こっていないことを確認する。
自動更新確認
sudo systemctl status snap.certbot.renew.timer
タイマーがactiveになっていればOK。
自動更新のシミュレーション
sudo certbot renew --dry-run
Congratulations, all simulated renewals succeeded: などが出ていればOK。
Windows Server
win-acmeの準備
ダウンロード
win-acmeのサイトから、zipファイルをダウンロードし、所定のフォルダに展開します。
設定変更
setting.jsonのCsr RsaのKeyBitsを2048に変更し上書き保存します。

win-acme実行~証明書登録作業~
PowerShellでwin-acmeのフォルダに移動し、情報システム課から提供されたwacsコマンドを実行します。
.\wacs.exe --baseuri "https://secomtrust-acme.com/acme/" --accepttos --eab-key-identifier XXXXXXXXXX --eab-key XXXXXXXXXXXXXXXXXXXXXXXX
対話モードに入ります。
はじめは「N」を選択してEnter。
IISで更新対象のサイトがバインドされていれば、そのままEnterを押し続けるとデフォルトの選択で進み、自動的に証明書が自動取得されます。

※上記選択は、それぞれの環境に合わせて適宜対応してください。
確認作業
証明書確認
証明書を使用しているサーバ(ウェブサイト等)にアクセスして、取得した証明書が適用され、エラーが起こっていないことを確認する。
自動更新確認
PowerShellで以下のコマンドを打ち、更新のスケジュールが組まれていればOK。
Get-ScheduledTaskInfo -TaskName "win-acme renew (secomtrust-acme.comacme)"

DNS-01チャレンジ方式
Linux
準備中
Windows Server
準備中