証明書の有効期限と運用 しょうめいしょのゆうこうきげんとうんよう
証明書更新有効期限証明書管理ACME自動更新証明書失効
証明書の有効期限と運用について教えて
簡単に言うとこんな感じ!
SSL証明書には有効期限があって、切れると「このサイトは安全でない」とブラウザに警告が出るよ。気づかないまま切れて事故になるケースが後を絶たないから、自動更新の仕組みを入れることがとても大事なんだ!
証明書の有効期限と運用とは
デジタル証明書には有効期限が設定されており、期限を過ぎた証明書はブラウザが警告を表示するか接続を拒否します。証明書を利用するサービスでは、有効期限の管理と更新が重要な運用業務になります。
有効期限が設けられている理由は以下の通りです。
- 鍵の危殆化(危険にさらされること)リスクの低減:鍵が漏洩した場合の被害期間を制限する
- フレッシュな情報の維持:証明書に記載された組織情報等の鮮度を保つ
- 失効確認コストの削減:有効期限が短ければCRL/OCSPへのアクセスが減る
2020年以降、パブリックCAのサーバー証明書の有効期限は最大398日(約13ヵ月)に制限されており、さらに短縮化が議論されています(2026年には47日案も検討中)。
証明書の有効期限サマリー
| 証明書の種類 | 有効期限 | 備考 |
|---|---|---|
| パブリックCAのサーバー証明書 | 最大398日 | 2020年以降の業界基準 |
| Let’s Encrypt証明書 | 90日 | 自動更新前提 |
| ルート証明書 | 20〜25年 | OSに組み込みで長期利用 |
| 中間CA証明書 | 2〜5年 | CAが定期交換 |
| クライアント証明書 | 1〜3年 | 企業ポリシーによる |
| コードサイニング証明書 | 1〜3年 | 署名後の証明書は長期有効な場合も |
歴史と背景
- 2000年代:証明書の有効期限は5年などが一般的で、手動更新が主流
- 2015年:CA/Browser Forumが有効期限を3年に短縮
- 2018年:CA/Browser Forumが最大有効期限を825日(2年強)に短縮
- 2020年:Appleが単独で398日超の証明書を拒否し、業界標準化
- 2021年〜:自動更新(ACME)の普及が本格化
- 2025年〜:CA/Browser Forumが47日(約1.5ヵ月)への短縮を議論中
証明書ライフサイクル管理のポイント
証明書の典型的な運用フロー:
1. 発行(Issue)
└ CSR送付 → CA審査 → 証明書取得 → サーバーへインストール
2. 監視(Monitor)
└ 有効期限を定期チェック(Nagios/Zabbix/CloudMonitor等)
└ 期限30日前・14日前・7日前にアラート
3. 更新(Renew)
└ 自動更新:certbot renew --pre-hook / --post-hook
└ 手動更新:期限前に手動で新規CSR・証明書取得・インストール
4. 失効(Revoke)
└ 秘密鍵漏洩時や組織変更時にCAへ失効申請
└ CRL/OCSPに反映
5. 廃止(Retire)
└ サービス終了時に証明書を廃止
証明書失効・期限切れ時のブラウザ表示
| 状態 | ブラウザの表示 | 影響 |
|---|---|---|
| 有効 | 🔒 錠前アイコン | 正常 |
| 期限切れ | ⚠️ 「接続は安全でない」警告 | ユーザーが離脱する |
| 失効(OCSP/CRL確認済み) | ⚠️ エラー(強制) | ブロック |
| 自己署名・不明なCA | ⚠️ 警告(回避可能) | 信頼されない |
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| RFC 5280 | X.509証明書の有効期限フィールドの仕様 |
| RFC 8555 | ACME(自動更新プロトコル) |
| CA/Browser Forum TLS BR | パブリック証明書の最大有効期限規定 |
関連用語
- 認証局(CA) — 証明書の発行と失効を管理する機関
- Let’s Encrypt — 90日証明書の自動更新で運用コストを削減
- OCSP・CRL — 証明書失効の確認手段
- サーバー証明書・中間証明書・ルート証明書 — 各証明書の有効期限の違い