2026年8月2日
2026年8月2日
OCSP Stapling のエラーを解消する方法|ssl_stapling の確認手順と、Let’s Encrypt の OCSP 終了(2025 年 8 月)後の正しい対応
OCSP Stapling のエラーは、2026年11月現在、「証明書に OCSP の URL が無いのに Stapling を有効にしている」ことが原因の大半です。Let's Encrypt は 2025 年 5 月 7 日から証明書に OCSP の URL を入れなくなり、2025 年 8 月 6 日に OCSP 応答サーバーを停止しました。Let's Encrypt の証明書を使っているなら、Nginx の ssl_stapling や Apache の SSLUseStapling を off にする(または行を消す)のが正しい対処で、設定を足して直そうとする必要はありません。
結論を先にまとめます。
- Nginx の
[warn] "ssl_stapling" ignored, no OCSP responder URL in the certificateは、証明書に OCSP の URL が無いという事実を伝えているだけで、サイトの表示には影響しません。Let's Encrypt の証明書なら想定どおりの表示です。 - OCSP の URL がある証明書(商用 CA など)で
OCSP responder timed outのようなエラーが出る場合は、resolverの設定とサーバーからの外向き通信(443 / 80)を確認します。 - Firefox で
MOZILLA_PKIX_ERROR_REQUIRED_TLS_FEATURE_MISSINGが出るのは、証明書に Must-Staple 拡張が付いているのにサーバーが OCSP 応答を添付できないときです。Must-Staple 無しで証明書を再発行します。 - 失効情報は CRL と、ブラウザー側の仕組み(Chrome の CRLSets、Firefox の CRLite)で扱われる流れになっており、OCSP Stapling の有無でサイトの安全性が変わるわけではありません。
OCSP Stapling とは
OCSP(Online Certificate Status Protocol)とは、証明書が失効していないかを認証局(CA)の応答サーバーに問い合わせる仕組みです。ブラウザーが自分で問い合わせると、表示が遅くなるうえ、CA に「誰がどのサイトを見たか」が伝わります。OCSP Stapling は、その問い合わせを Web サーバーが代わりに行い、署名付きの応答を TLS のハンドシェイクに添付(staple)して渡す方式です。
| 項目 | ブラウザーが直接 OCSP を引く | OCSP Stapling |
|---|---|---|
| 問い合わせる側 | 閲覧者のブラウザー | Web サーバー(定期的に取得して保持) |
| 速度 | 接続のたびに CA へ往復 | ハンドシェイクに同梱。往復なし |
| プライバシー | CA に閲覧先が伝わる | 伝わらない |
| 前提 | 証明書に OCSP の URL(AIA 拡張)がある | 同じ |
つまり、証明書に OCSP の URL が入っていなければ、Stapling は仕組み上できません。
Let’s Encrypt の OCSP 終了(2024 年 12 月発表、2025 年 8 月完了)
Let's Encrypt は 2024 年 12 月 5 日に OCSP の終了を発表し、次の日程で実施しました。
| 日付 | 内容 |
|---|---|
| 2025 年 1 月 30 日 | OCSP Must-Staple 拡張を付けた新規の発行要求が失敗するように(過去に Must-Staple で発行したアカウントは例外) |
| 2025 年 5 月 7 日 | 証明書に OCSP の URL を入れなくなる。Must-Staple を付けた発行要求はすべて失敗(更新も含む) |
| 2025 年 8 月 6 日 | OCSP 応答サーバーを停止。失効情報は CRL だけで公開 |
理由として Let's Encrypt は、OCSP が閲覧者のプライバシーに関わること、2022 年に CRL の提供を始めたことで OCSP が不要になったこと、基盤を単純にできることを挙げています。
この結果、2026年11月現在、Let's Encrypt の証明書には OCSP の URL が無く、Nginx や Apache の Stapling 設定は「何もしない」か「警告を出す」だけになっています。
手順 1: 証明書に OCSP の URL があるか確認する
サーバー上の証明書ファイルから、OCSP の URL(Authority Information Access 拡張)を取り出します。
openssl x509 -in /etc/letsencrypt/live/example.com/cert.pem -noout -ocsp_uri
何も表示されなければ、その証明書には OCSP の URL がありません。Let's Encrypt の証明書はこの状態です。URL が表示される証明書(商用 CA の多く)では Stapling を使えます。
発行者も確認しておきます。
openssl x509 -in /etc/letsencrypt/live/example.com/cert.pem -noout -issuer -dates
手順 2: 外から Stapling の状態を確認する
公開サーバーに対して、OCSP 応答が添付されているかを見ます。
openssl s_client -connect example.com:443 -servername example.com -status </dev/null 2>/dev/null | grep -A 3 "OCSP response"
| 表示 | 意味 |
|---|---|
OCSP response: no response sent |
Stapling は動いていない(OCSP の URL が無い証明書では正常) |
OCSP Response Status: successful (0x0) |
Stapling が動いていて、応答が添付されている |
OCSP Response Status: ... が successful 以外 |
応答の取得に失敗している。手順 4 へ |
手順 3: OCSP の URL が無い証明書 — Stapling を無効にする
Let's Encrypt の証明書のように OCSP の URL が無い場合、Stapling の設定は外します。
Nginx
# ssl_stapling on;
# ssl_stapling_verify on;
# ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
該当行を削除するかコメントにし、sudo nginx -t で確認して sudo systemctl reload nginx します。Certbot が生成した options-ssl-nginx.conf に書かれている場合は、そのファイル側を確認します。警告 "ssl_stapling" ignored, no OCSP responder URL in the certificate は、この設定が残っている間だけ出ます。
Apache
SSLUseStapling on と SSLStaplingCache の行を off にするか削除します。
SSLUseStapling off
sudo apachectl configtest で確認し、sudo systemctl reload apache2(RHEL 系は httpd)で反映します。
無効にしても、閲覧者側の失効確認は CRL やブラウザー独自の仕組みで続くため、安全性が下がるわけではありません。
手順 4: OCSP の URL がある証明書 — 取得エラーを直す
商用 CA の証明書で Stapling を使っていて、OCSP responder timed out や OCSP response not successful のようなエラーログが出る場合は、サーバーが CA の応答サーバーに届いていません。
- 名前解決: Nginx は
resolverを明示しないと OCSP の URL を解決できません。resolver 127.0.0.53 valid=300s;(systemd-resolved の環境)のように、使える DNS を指定します。 - 外向きの通信: サーバーから CA の応答サーバー(HTTP、80 番が多い)への外向き接続が、ファイアウォールやプロキシで止まっていないか確認します。
curl -Iで URL に届くかを見ます。 - 中間証明書: Nginx の
ssl_stapling_verify on;を使うときはssl_trusted_certificateに中間証明書とルートを含むチェーンを指定します。 - Apache は
SSLStaplingCache "shmcb:logs/ssl_stapling(32768)"を<VirtualHost>の外に書く必要があります。中に書くと起動時にエラーになります。
Nginx の ssl_stapling_file で、あらかじめ取得した応答ファイルを渡す方法もありますが、応答の有効期限ごとに更新する仕組みが必要になるため、通常は使いません。
手順 5: Must-Staple 付きの証明書を見直す
Firefox で MOZILLA_PKIX_ERROR_REQUIRED_TLS_FEATURE_MISSING、Chrome で接続エラーになるのに openssl では正常、という場合は、証明書に OCSP Must-Staple(TLS Feature 拡張)が付いているのに Stapling の応答が添付できない状態です。
openssl x509 -in cert.pem -noout -text | grep -A1 "TLS Feature"
status_request と表示されれば Must-Staple 付きです。Let's Encrypt では 2025 年 5 月 7 日以降、Must-Staple 付きの発行・更新はできないため、Certbot の設定(--must-staple オプションや /etc/letsencrypt/renewal/*.conf の must_staple = True)を外して再発行します。商用 CA の Must-Staple 証明書で Stapling が止まっている場合は、手順 4 で Stapling を直すか、Must-Staple 無しで再発行します。
WordPress の観点
WordPress のサイトで OCSP Stapling のエラーが問題になるのは、ほとんどが「サーバーの設定を見直したときに警告に気づいた」場面で、サイトの表示や SEO に影響していることはまれです。
- Let's Encrypt で HTTPS 化した WordPress サイトは、Stapling の行を外して警告を消すだけで済みます。
- 管理画面やプラグインの更新で「SSL 証明書の問題」と表示される場合、原因は Stapling ではなく、サーバーの CA 証明書ストアの古さや中間証明書の不足であることが多いです。
openssl s_clientのVerify return codeを確認します。 - Cloudflare などの CDN を前に置いている場合、閲覧者が見ている証明書は CDN のものです。オリジン側の Stapling 設定は閲覧者には見えません。
- HTTPS 化そのものの手順と、頼む場合の費用は「WordPress の修正・改修の費用の目安」にまとめています。
よくある質問
Nginx の警告「ssl_stapling ignored」は放置してよいですか
サイトの動作には影響しません。ただし設定として意味が無くなっているので、ssl_stapling 関連の行を外して警告を消しておくと、ログを見るときに本当の問題を見つけやすくなります。
OCSP Stapling を無効にするとサイトは危険になりますか
なりません。失効の確認は CRL と、Chrome の CRLSets や Firefox の CRLite のようなブラウザー側の仕組みで行われます。Let's Encrypt が OCSP を終了したのも、CRL で代替できると判断したためです。
商用の証明書に乗り換えれば Stapling を使えますか
OCSP の URL を含む証明書を出している CA なら使えます。ただし、業界全体として OCSP から CRL への移行が進んでいるため、Stapling を目的に乗り換える理由は薄いです。表示速度やセキュリティへの影響は、ほかの要素(HTTP/2、キャッシュ、TLS 1.3)のほうがはるかに大きいです。
テストサイトで A+ を取るには Stapling が必要ですか
SSL Labs などの評価で Stapling は「あれば表示される」項目で、無くても評価が下がるわけではありません(2026年11月現在)。評価を下げる主因は古い TLS バージョンや弱い暗号スイートです。
まとめ
- OCSP Stapling のエラーの多くは、OCSP の URL が無い証明書(Let's Encrypt は 2025 年 5 月以降)で Stapling を有効にしていることが原因で、設定を外すのが正しい対処です。
- 確認は
openssl x509 -ocsp_uriとopenssl s_client -statusの 2 つで行い、URL がある証明書でエラーが出るならresolverと外向き通信、Apache のSSLStaplingCacheの位置を見ます。 - Must-Staple 付きの証明書はブラウザーで接続エラーになるため、Must-Staple 無しで再発行します。
関連記事
参考: Let's Encrypt – Ending OCSP Support in 2025(2024-12-05)、Let's Encrypt – OCSP Service Has Reached End of Life(2025-08-06)、Nginx – ngx_http_ssl_module(ssl_stapling)、Apache mod_ssl – SSLUseStapling
更新履歴: 2026-11-09 全面改訂(定型の手順を、Let's Encrypt の OCSP 終了を踏まえた「無効にする」対処と、OCSP の URL がある証明書での取得エラーの直し方、Must-Staple の扱いに置き換え)。この記事はワードプレス博士(ライトセンド株式会社)が運営しています。