HOME > 技術ドキュメント > Certbot(Let's Encrypt)自動更新設定(Ubuntu 24.04 LTS)
Certbot(Let's Encrypt)自動更新設定(Ubuntu 24.04 LTS)
Certbot は Let's Encrypt が提供する無料 DV SSL 証明書を取得・自動更新するためのツールです。 Ubuntu 24.04 LTS では snap パッケージによるインストールが公式推奨です。 本記事では Apache / Nginx プラグインを使った証明書取得から、systemd タイマーによる自動更新まで手順を解説します。
Certbot のインストール
snap を使ってインストールします。apt 版は古いため使用しないでください。
sudo apt update sudo apt install -y snapd sudo snap install --classic certbot sudo ln -s /snap/bin/certbot /usr/bin/certbot certbot --version
証明書の取得(Nginx プラグイン)
Nginx が動作中の状態で実行します。Certbot が Nginx の設定を自動で書き換え、HTTPS リダイレクトも設定します。
sudo certbot --nginx -d example.com -d www.example.com
対話形式でメールアドレスと利用規約への同意を求められます。完了後、/etc/letsencrypt/live/example.com/ に証明書が配置されます。
証明書の取得(Apache プラグイン)
sudo certbot --apache -d example.com -d www.example.com
証明書ファイルの場所
| ファイル | 説明 |
|---|---|
fullchain.pem |
サーバー証明書 + 中間証明書(Nginx/Apache の ssl_certificate に指定) |
privkey.pem |
秘密鍵(ssl_certificate_key に指定) |
cert.pem |
サーバー証明書のみ |
chain.pem |
中間証明書のみ |
自動更新の確認
Certbot を snap でインストールすると、snap.certbot.renew という systemd タイマーが自動で登録されます。
sudo systemctl status snap.certbot.renew.timer
更新処理のドライランで問題がないか確認します。
sudo certbot renew --dry-run
エラーなく完了すれば、自動更新は正常に動作しています。
手動更新と更新ログ確認
sudo certbot renew sudo journalctl -u snap.certbot.renew.service --since "7 days ago"
ワイルドカード証明書(DNS-01 チャレンジ)
*.example.com のようなワイルドカード証明書は、HTTP-01 チャレンジではなく DNS-01 チャレンジが必要です。
DNS プロバイダーの API キーを使って TXT レコードを自動設定するプラグイン(certbot-dns-cloudflare など)を使います。
sudo snap install certbot-dns-cloudflare sudo certbot certonly \ --dns-cloudflare \ --dns-cloudflare-credentials ~/.secrets/cloudflare.ini \ -d "*.example.com" -d example.com
手動で DNS TXT レコードを設定する場合は --manual --preferred-challenges dns オプションを使いますが、自動更新には対応しません。
証明書の有効期限確認
sudo certbot certificates
Let's Encrypt で対応できないケース
Let's Encrypt は無料の DV(ドメイン認証)証明書のみを発行します。以下のケースでは有料証明書が必要です。
| ケース | 理由 |
|---|---|
| EC サイト・金融サービス | OV/EV 証明書による組織認証がユーザーの信頼獲得に有効 |
| 自動更新できない環境(閉域網・古い機器) | 90日ごとの更新が前提のため手動管理が困難 |
| 2025年以降の 47日証明書化への対応 | Let's Encrypt も短期化が進む。自動化前提でないと運用負荷が上がる |
| EV 証明書が必要な場合 | Let's Encrypt は EV を発行しない |
有料証明書であれば証明書の有効期間・発行 CA・認証レベルを選択でき、サポートも受けられます。
エスロジカルではデジサート・サイバートラストの正規取扱代理店として、
RapidSSL 3,960円/1年(税込)〜で SSL証明書を販売しています。審査サポート・インストール代行も対応しています。
SSL証明書の購入はこちら / Let's Encrypt vs 有料 SSL証明書 / インストール代行サービス
関連ドキュメント
Apache インストール(Ubuntu 24.04 LTS) — apt によるインストール、SSL 有効化、バーチャルホスト設定
Nginx SSL/TLS 設定(Ubuntu 24.04 LTS) — HTTPS 設定、TLS 1.2/1.3、リバースプロキシ
Let's Encrypt vs 有料 SSL証明書 — DV・OV・EV の違い、47日化への対応
