TLS の導入方法も変化しています。公開鍵証明書の最長有効期間は 5 年から 2 年になり(
CA/Browser Forum )、近いうちに 1 年に短縮される予定です。手動での証明書の登録による問題を減らすため、Internet Engineering Task Force(IETF)は自動で証明書を管理する Automatic Certificate Management Environment(
ACME )を標準化しました。ACME を利用すると、相互運用が可能な形で認証局(CA)がパブリック ウェブの TLS 証明書を自動で提供できます。
最近の TLS の変遷 をたどる上では、公的に信頼された初めての非営利 CA である
Let’s Encrypt の存在に触れないわけにはいきません。その自動化と TLS のデフォルト化に向けた注力は、TLS の大幅な利用拡大の土台となっています。実際、Let’s Encrypt は 10 億個目(!)の証明書を発行したばかりです。Google は Let’s Encrypt を積極的に支援しています。TLS を身近なものにするという Let’s Encrypt の取り組みは、インターネット インフラストラクチャのセキュリティやレジリエンスにとって欠かせないと信じているからです。Let’s Encrypt の健闘を祈ります!
Google ユーザーの証明書ライフサイクル管理を簡単に
以上のことは、セキュリティ コミュニティ全体で成し遂げた大きく重要な一歩です。同時に、この取り組みは、鍵の有効期間を短縮してセキュリティを改善することも意味します。それにより、証明書の更新頻度が上がるだけでなく、ますます多様なインフラストラクチャへのデプロイが求められることになります。ウェブのトラフィックは複数のデータセンターから提供され、多くの場合はプロバイダも異なります。そのため、更新する必要がある証明書を管理したり、新しい証明書を正しくデプロイしたりする作業を手動で行うのは難しくなります。では、どうすればいいのでしょうか。
前述の普及状況を考えれば、私たちやお客様が構築、デプロイするすべてのプロダクトにとって、TLS や Web PKI、証明書ライフサイクル管理が重要であることは明白です。そのため、私たちはプロダクトやサービスにおいてデフォルトで TLS を有効化するという重要な取り組みを拡大しつつ、証明書の更新を自動化して証明書ライフサイクル管理の信頼性を向上させ、グローバルでの拡大を実現し、お客様からの確かな信頼を得られるようにしてきました。私たちの目的はシンプルで、どの Google のサービスを使う場合でもすぐに TLS を利用できるようにすることです。
その目的の実現に向けて、内部専用の ACME サービスである
Google Trust Services を使い、Google のサービスを対象に TLS 証明書の自動管理を実現しました。これは、Google のプロダクトやサービスだけでなく、Alphabet や Google Cloud のお客様のためにも使われています。その結果、お客様の証明書が自動的に更新されるようになり、ユーザーは証明書の有効期限切れなどについて心配する必要はなくなりました。この実装のポイントを紹介します。
Blogger ブログ、Google サイト、Google マイビジネス サイトは、すべてのカスタム ドメインがデフォルトで HTTPS 化されています。
Google Cloud ユーザーは、自分のドメインで Managed TLS を利用できます。そのため、以下のようになります。
Firebase、Cloud Run、AppEngine で開発しているデベロッパーは、何もしなくてもアプリケーションで HTTPS を利用できます。
Google Kubernetes Engine に、または Google Cloud Load Balancing(GCLB)の背後にアプリケーションをデプロイする場合は、お客様が Google が管理する証明書を使うことを選択すると、自動的に証明書管理が行われます。これには、それぞれのプロダクトで簡単かつ確実に TLS を利用できるようになるという効果もあります。
Google のサービスにとって、パフォーマンス、拡張性、信頼性は必須要件です。私たちは、プロダクトやサービスでこれらの基準を満たせるように、公的に信頼された CA である Google Trust Services を設立しました。同時に、私たちはユーザーの選択を重視します。そのため、Google Trust Services を簡単に使えるようにしつつも、Google のプロダクトやサービス全体で Let’s Encrypt も使えるようにしています。これは、プリファレンスを指定する
CAA レコードを作成 することで、簡単に選択できます。
すぐに使える TLS はすべての人に恩恵をもたらしますが、パワーユーザーには特別なニーズもあることも承知しています。そこで、
Google Cloud Load Balancing では、TLS ターミネーション関係のポリシーを制御できる高度な機能を提供しています。
さらに、
Certificate Transparency の作業では、他の組織とも連携し、WebPKI エコシステムで自分のドメインやそれに似たドメインに対して発行された証明書をモニタリングすることで、お客様が簡単に自身やユーザーのブランドを保護できるようにしています。この事前対策により、問題が起こる前に悪用を防止できます。たとえば、Facebook は Certificate Transparency ログを使用して、Facebook のサービスになりすまそうとした多くのフィッシング サイトを
特定 しました。
私たちは、皆さんにとってセキュリティ、プライバシー、信頼性がどれほど重要なものであるかを承知しており、皆さんがさまざまなプロダクトに安心して TLS を導入するために必要なツールを提供する作業を進めています。今後も、インターネットを安全な場所にするための取り組みを協力して進めてゆきたいと思います。
Reviewed by
Eiji Kitamura - Developer Relations Team
この記事は Google Cloud、プロダクト マネージャー、Siddharth Bhai、Ryan Hurst による Google Online Security Blog の記事 "How Google does certificate lifecycle management " を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
ここ数年、ウェブにおける Transport Layer Security(TLS)の使用は増加しており、Chrome OS の Chrome ブラウザで確認できるトラフィック全体の 96% 以上を占めるまでになっています。Google 透明性レポート でも報告されているように、わずか 4 年で 35% 以上増加しています。これは、ウェブ デベロッパー、企業、あるいはネチズンにとって、インターネットをあらゆる人にとって安全な場所にするために全員で成し遂げた実績だと言えます。
TLS の導入方法も変化しています。公開鍵証明書の最長有効期間は 5 年から 2 年になり(CA/Browser Forum )、近いうちに 1 年に短縮される予定です。手動での証明書の登録による問題を減らすため、Internet Engineering Task Force(IETF)は自動で証明書を管理する Automatic Certificate Management Environment(ACME )を標準化しました。ACME を利用すると、相互運用が可能な形で認証局(CA)がパブリック ウェブの TLS 証明書を自動で提供できます。
最近の TLS の変遷 をたどる上では、公的に信頼された初めての非営利 CA である
Let’s Encrypt の存在に触れないわけにはいきません。その自動化と TLS のデフォルト化に向けた注力は、TLS の大幅な利用拡大の土台となっています。実際、Let’s Encrypt は 10 億個目(!)の証明書を発行したばかりです。Google は Let’s Encrypt を積極的に支援しています。TLS を身近なものにするという Let’s Encrypt の取り組みは、インターネット インフラストラクチャのセキュリティやレジリエンスにとって欠かせないと信じているからです。Let’s Encrypt の健闘を祈ります!
Google ユーザーの証明書ライフサイクル管理を簡単に
以上のことは、セキュリティ コミュニティ全体で成し遂げた大きく重要な一歩です。同時に、この取り組みは、鍵の有効期間を短縮してセキュリティを改善することも意味します。それにより、証明書の更新頻度が上がるだけでなく、ますます多様なインフラストラクチャへのデプロイが求められることになります。ウェブのトラフィックは複数のデータセンターから提供され、多くの場合はプロバイダも異なります。そのため、更新する必要がある証明書を管理したり、新しい証明書を正しくデプロイしたりする作業を手動で行うのは難しくなります。では、どうすればいいのでしょうか。
前述の普及状況を考えれば、私たちやお客様が構築、デプロイするすべてのプロダクトにとって、TLS や Web PKI、証明書ライフサイクル管理が重要であることは明白です。そのため、私たちはプロダクトやサービスにおいてデフォルトで TLS を有効化するという重要な取り組みを拡大しつつ、証明書の更新を自動化して証明書ライフサイクル管理の信頼性を向上させ、グローバルでの拡大を実現し、お客様からの確かな信頼を得られるようにしてきました。私たちの目的はシンプルで、どの Google のサービスを使う場合でもすぐに TLS を利用できるようにすることです。
その目的の実現に向けて、内部専用の ACME サービスである
Google Trust Services を使い、Google のサービスを対象に TLS 証明書の自動管理を実現しました。これは、Google のプロダクトやサービスだけでなく、Alphabet や Google Cloud のお客様のためにも使われています。その結果、お客様の証明書が自動的に更新されるようになり、ユーザーは証明書の有効期限切れなどについて心配する必要はなくなりました。この実装のポイントを紹介します。
Blogger ブログ、Google サイト、Google マイビジネス サイトは、すべてのカスタム ドメインがデフォルトで HTTPS 化されています。
Google Cloud ユーザーは、自分のドメインで Managed TLS を利用できます。そのため、以下のようになります。
Firebase、Cloud Run、AppEngine で開発しているデベロッパーは、何もしなくてもアプリケーションで HTTPS を利用できます。
Google Kubernetes Engine に、または Google Cloud Load Balancing(GCLB)の背後にアプリケーションをデプロイする場合は、お客様が Google が管理する証明書を使うことを選択すると、自動的に証明書管理が行われます。これには、それぞれのプロダクトで簡単かつ確実に TLS を利用できるようになるという効果もあります。
Google のサービスにとって、パフォーマンス、拡張性、信頼性は必須要件です。私たちは、プロダクトやサービスでこれらの基準を満たせるように、公的に信頼された CA である Google Trust Services を設立しました。同時に、私たちはユーザーの選択を重視します。そのため、Google Trust Services を簡単に使えるようにしつつも、Google のプロダクトやサービス全体で Let’s Encrypt も使えるようにしています。これは、プリファレンスを指定する CAA レコードを作成 することで、簡単に選択できます。
すぐに使える TLS はすべての人に恩恵をもたらしますが、パワーユーザーには特別なニーズもあることも承知しています。そこで、
Google Cloud Load Balancing では、TLS ターミネーション関係のポリシーを制御できる高度な機能を提供しています。
さらに、
Certificate Transparency の作業では、他の組織とも連携し、WebPKI エコシステムで自分のドメインやそれに似たドメインに対して発行された証明書をモニタリングすることで、お客様が簡単に自身やユーザーのブランドを保護できるようにしています。この事前対策により、問題が起こる前に悪用を防止できます。たとえば、Facebook は Certificate Transparency ログを使用して、Facebook のサービスになりすまそうとした多くのフィッシング サイトを
特定 しました。
私たちは、皆さんにとってセキュリティ、プライバシー、信頼性がどれほど重要なものであるかを承知しており、皆さんがさまざまなプロダクトに安心して TLS を導入するために必要なツールを提供する作業を進めています。今後も、インターネットを安全な場所にするための取り組みを協力して進めてゆきたいと思います。
Reviewed by Eiji Kitamura - Developer Relations Team