SSL 自動更新が失敗する原因と対処
目次
この記事でわかること
- SSL 自動更新が止まる 6 つの代表的な原因
- 自動更新が動いているかを確認する方法
- 失敗時の緊急復旧手順
- 再発を防ぐ監視と運用ルール
「動いているはず」が止まっている事故
SSL の自動更新は設定後ほぼ放置で済むため、止まっていることに気づきにくいトラブルです。期限切れの 3 日前に「証明書が更新されていません」のアラートが飛んできて初めて発覚するケースも珍しくありません。
Let's Encrypt の有効期間は最大 90 日と短く、自動更新前提で運用されます。商用 SSL でも自動更新ツール(cert-manager / Caddy / Certbot 等)を利用している場合は同じ問題が起き得ます。
期限が切れると Chrome の「保護されていない通信」警告が出て、検索流入と問い合わせが止まります。失敗の早期発見が重要です。
自動更新が失敗する 6 つの原因
原因 1: 検証用ファイルの配置場所が変わった
Let's Encrypt の HTTP-01 認証は、サーバーの特定パス(/.well-known/acme-challenge/)にファイルを置いて所有確認します。サーバー移転や Web サーバー設定変更でこのパスにアクセスできなくなると、認証が失敗します。
原因 2: DNS-01 認証用 API トークンの失効
ワイルドカード SSL や CDN 越しの構成で使う DNS-01 認証は、DNS プロバイダ(Cloudflare / Route 53 等)の API トークンを使って TXT レコードを書き換えます。トークンの有効期限切れ、権限変更、ローテーション漏れで認証が失敗します。
原因 3: レンタルサーバー側の自動更新が無効化された
レンタルサーバーの管理画面でドメインを再追加・変更したタイミングで、自動 SSL のチェックが外れてしまう事故。xserver さくら ConoHa 等で報告がある定番パターンです。
原因 4: ドメインの DNS 解決が変わった
A レコードや CNAME の変更で、認証局が確認しに来るサーバーと実際のサーバーがずれている状態。ドメイン移管や CDN 切替の直後に起きやすいです。
原因 5: ファイアウォール / Bot 対策が認証局をブロック
Cloudflare WAF や自社ファイアウォールのルール変更で、Let's Encrypt の認証 IP からのアクセスがブロックされるケース。アクセス制限を厳格化したタイミングで再現します。
原因 6: 証明書発行のレート制限到達
Let's Encrypt は同一ドメインで週 5 回までの発行上限があります。テストや誤ったリトライで上限を超えると、しばらく発行できなくなります。
自動更新が動いているかの確認
確認 1: 証明書の現在の有効期限
Web サイトをブラウザで開き、鍵マーク → 「証明書」で発行日と有効期限を確認します。発行から 30 日以上経過しているのに更新されていなければ要警戒です。
確認 2: 直近の更新ログ
サーバー側で /var/log/letsencrypt/letsencrypt.log などのログファイル、または管理画面の更新履歴を確認します。直近 90 日内に「Renewal succeeded」が記録されているかが目安です。
確認 3: 30 日後に自動更新が走るかのテスト
Certbot なら certbot renew --dry-run で本番更新せずに動作確認できます。レンタルサーバーの管理画面に「更新テスト」ボタンがある場合もあります。
期限管理の基本はSSL 証明書 有効期限の確認方法を参照。
緊急復旧の手順
期限切れまで時間がない場合の対応です。
- 手動で証明書を即時発行: Certbot なら
certbot renew --force-renewal、商用 SSL なら認証局の管理画面から手動更新 - 発行後、サーバーに反映: 設定ファイルのパス確認と Web サーバーのリロード
- ブラウザで反映確認: キャッシュを無視して鍵マークと期限を確認
- 失敗原因を特定し、自動更新を復旧: 上記 6 つの原因のどれかを切り分け
期限が切れて警告が出始めている場合は、SSL 期限切れ警告の直し方の手順を並行で進めます。
再発を防ぐ運用ルール
「自動更新を入れた」だけでは止まったことに気づけません。次の 3 点を仕組み化します。
- 期限の 30 日前アラート: 監視サービス(UptimeRobot / Datadog 等)または社内通知 Slack
- 月次の更新ログ確認: 担当者が月初に「先月、自動更新が走ったか」をチェック
- サーバー移転・CDN 切替・WAF 変更の直後は必ず動作確認: 環境変更が自動更新を壊す典型パターン
複数ドメインを運用しているなら、棚卸しの仕組みも合わせて検討します(複数ドメイン SSL の一括管理)。
まとめ
- 自動更新が失敗する原因は検証経路 / API トークン / 管理画面の設定 / DNS 変更 / ファイアウォール / レート制限 の 6 つ
- 確認は「現在の期限」「更新ログ」「テスト実行」の 3 観点
- 緊急時は手動の
--force-renewalで即時発行、その後に原因特定 - 再発防止は期限アラート + 月次ログ確認 + 環境変更直後の動作確認
まずは現状を把握しましょう
自社の SSL 証明書の有効期限と設定状況は、ドメイン番人のSSL 単発チェックで確認できます。メール認証も含めた総合点検は無料診断をご利用ください。