Let’s Encrypt 2017年5月19日OCSP停止と発行サービス停止についての経緯報告

ニュースソース:Let’s Encrypt

以下は、2017年5月20日に公開されたMay 19, 2017: OCSP and Issuance Outage Postmortemを要約したものです。

注:OCSPとは何かについては、証明書の失効:CRL(Certificate Revocation Lists) とOCSPを参照してください。

2017年05月18日17:25(UTC)から2017年05月19日06:05(UTC)に、Let’s EncryptのOCSPで障害が発生しました。
原因は、OCSPサービスのURLの処理変更にありました。
OCSPリクエストがGetで行われた場合、以下のような書式となります。

GET {url}/{OCSPRequest}

OCSPRequestはバイナリデータ(DERエンコードASN.1)なので、GETリクエストはbase-64エンコードされます。
base64アルファベットにはスラッシュ( “/”)が含まれています。これによって引き起こされる問題を解決するためにスラッシュマージを導入しましたが、ここに問題がありました。

根本問題の解決に加え、以下の対応を行っています。

  • OCSPのモニタリングの改善:4xxシエラーへの対応
  • OCSPリクエスト数のモニタリング:リクエスト数の急増監視
  • Webサーバーの接続数と接続数の急激な増加を監視
  • CDNプロバイダーとのコミュニケーションの改善
  • OCSPとAPIトラフィック間の通信の見直し