ネットワークを保護する

Last reviewed 2023-06-09 UTC

Google Cloud Architecture Framework のこのドキュメントでは、ネットワークを保護するためのベスト プラクティスについて説明します。

既存のネットワークをクラウド環境に拡張する場合、セキュリティについて多くのことを検討する必要があります。多層防御のオンプレミス アプローチでは、インターネットと内部ネットワークとの間に明確な境界が存在する可能性があります。こうした境界は、物理的なファイアウォール、ルーター、侵入検知システムなどで保護できるかもしれません。境界が明確に定義されているため、侵入を簡単に監視し、それに応じて対応できます。

完全かハイブリッドかにかかわらず、クラウドへの移行はオンプレミス境界を越えることになります。このドキュメントでは、Google Cloud で組織のデータとワークロードの保護を継続する方法について説明します。コントロールでリスクを管理するで説明したように、Google Cloud ネットワークの設定方法と保護方法はビジネス要件とリスク許容度によって異なります。

このセクションでは、システム設計カテゴリのネットワーキングのセクションを読み、すでに Google Cloud ネットワーク コンポーネントの基本的なアーキテクチャ図を作成していることを前提としています。サンプルの図については、ハブ アンド スポークをご覧ください。

ゼロトラスト ネットワークをデプロイする

クラウドに移行するには、ネットワーク信頼性モデルの変更が必要になります。ユーザーとワークロードがオンプレミス境界の背後に存在するため、信頼性の高い内部ネットワークと同じ方法で境界を保護することはできません。ゼロトラスト セキュリティ モデルは、組織のネットワークの内か外かにかかわらず、デフォルトでは何も信頼しないことを意味します。アクセス リクエストを確認するには、ゼロトラスト セキュリティ モデルでユーザーの ID とコンテキストの両方を確認する必要があります。VPN とは異なり、アクセス制御は、ネットワーク境界からユーザーとデバイスにシフトします。

Google Cloud では、ゼロトラスト ソリューションとして BeyondCorp Enterprise を使用できます。BeyondCorp Enterprise は脅威からのデータ保護アクセス制御を提供します。詳しい設定方法については、BeyondCorp Enterprise のスタートガイドをご覧ください。

Google Cloud では、BeyondCorp Enterprise 以外にも、Identity-Aware Proxy(IAP)も使用できます。IAP を使用すると、Google Cloud 内とオンプレミスの両方で、アプリケーションにゼロトラスト セキュリティを拡張できます。IAP は、アクセス制御ポリシーを使用して、アプリケーションやリソースにアクセスするユーザーに認証と認可を提供します。

オンプレミス環境またはマルチクラウド環境への接続のセキュリティを確保します

多くの組織では、クラウド環境とオンプレミスの両方にワークロードがあります。さらに、復元力を確保するために、マルチクラウド ソリューションを使用する組織もあります。このようなシナリオでは、すべての環境間の接続を保護することが重要です。

Google Cloud には、Cloud VPNCloud Interconnect によってサポートされている VM に対するプライベート アクセス方式があります。これには次のような方法があります。

プロダクト間の比較については、Network Connectivity プロダクトの選択をご覧ください。

デフォルト ネットワークを無効にする

新しい Google Cloud プロジェクトを作成すると、自動モードの IP アドレスを持つデフォルトの Google Cloud VPC ネットワークと、事前設定のファイアウォール ルールが自動的にプロビジョニングされます。本番環境のデプロイの場合、既存のプロジェクトではデフォルト ネットワークを削除し、さらに新しいプロジェクトでは、デフォルト ネットワークの作成を無効にすることをおすすめします。

Virtual Private Cloud ネットワークでは、任意の内部 IP アドレスを使用できます。IP アドレスの競合を回避するには、まず、接続されたデプロイとプロジェクト全体でネットワークと IP アドレスの割り振りを計画することをおすすめします。プロジェクトで複数の VPC ネットワークを許可することもできますが、一般的には、アクセス制御を効果的に実施するために、これらのネットワークをプロジェクトごとに 1 つに制限することをおすすめします。

境界の保護

Google Cloud では、ファイアウォールや VPC Service Controls など、さまざまな方法を使ってクラウド境界をセグメント化し、保護できます。

共有 VPC を使用すると、単一の共有ネットワークを提供し、複数のチームで管理される個々のプロジェクトにワークロードを分離する本番環境デプロイメントを構築できます。共有 VPC は、複数のプロジェクトにまたがるネットワークとネットワーク セキュリティ リソースの一元的なデプロイ、管理、制御を可能にします。共有 VPC は、次の機能を実行するホスト プロジェクトとサービス プロジェクトで構成されます。

  • ホスト プロジェクトには、VPC ネットワーク、サブネット、ファイアウォール ルール、ハイブリッド接続など、ネットワークとネットワークのセキュリティ関連のリソースが含まれます。
  • サービス プロジェクトは、ホスト プロジェクトに接続されます。これを使用すると、Identity and Access Management(IAM)を使用してプロジェクト レベルでワークロードとユーザーを分離すると同時に、一元管理されたホスト プロジェクトからネットワーク リソースを共有できます。

組織、フォルダ、VPC ネットワークのレベルで、ファイアウォール ポリシーとルールを定義します。VM インスタンスとの間で発生するトラフィックを許可または拒否するように、ファイアウォール ルールを構成できます。たとえば、グローバルとリージョンのネットワーク ファイアウォール ポリシーの例階層型ファイアウォール ポリシーの例をご覧ください。IP アドレス、プロトコル、ポートに基づいたルールの定義に加えて、VM インスタンスで使用されているサービス アカウントに基づいて、または、セキュアタグを使用して、トラフィックを管理し、ファイアウォール ルールを適用できます。

Google サービス内のデータの移動を制御し、コンテキスト ベースの境界セキュリティを設定するには、VPC Service Controls を検討してください。VPC Service Controls は、IAM、ファイアウォール ルールとポリシーに関係なく、Google Cloud サービスに対するセキュリティを強化します。たとえば、VPC Service Controls を使用すると、機密データと機密データ以外の間に境界を設定し、データの引き出しを防ぐコントロールを適用できます。

Google Cloud Armor のセキュリティ ポリシーを使用すると、着信トラフィックの送信元にできるだけ近い場所で Google Cloud Edge の外部アプリケーション ロードバランサへのアクセスを許可、拒否、またはリダイレクトできます。このポリシーにより、望ましくないトラフィックによるリソースの消費や、ネットワークへの侵入を防ぐことができます。

Secure Web Proxy を使用して、下り(外向き)ウェブ トラフィックにきめ細かいアクセス ポリシーを適用し、信頼していないウェブサービスへのアクセスをモニタリングします。

ネットワーク トラフィックを検査する

Cloud IDS と Packet Mirroring は、Compute EngineGoogle Kubernetes Engine(GKE)で実行されているワークロードのセキュリティとコンプライアンスを確保するために使用できます。

Cloud Intrusion Detection System(現在はプレビュー版)を使用して、VPC ネットワークと送受信されるトラフィックの詳細を可視化できます。Cloud IDS は、ミラーリングされた VM のある Google 管理のピアリング ネットワークを作成します。Palo Alto Networks の脅威対策技術により、トラフィックをミラーリングして検査します。詳細については、Cloud IDS の概要をご覧ください。

Packet Mirroring は、VPC ネットワーク内の指定された VM インスタンスのトラフィックを複製し、収集、保持、調査のために転送します。Packet Mirroring を構成すると、Cloud IDS やサードパーティ ツールを使用してネットワーク トラフィックを大規模に収集し、検査できます。この方法でネットワーク トラフィックを検査すると、侵入検知とアプリケーションのパフォーマンス モニタリングの実現が容易になります。

ウェブ アプリケーションのファイアウォールを使用する

外部のウェブ アプリケーションとサービスに対しては、Google Cloud Armor を有効にすることで、分散型サービス拒否攻撃(DDoS)からの保護と、ウェブ アプリケーション ファイアウォール(WAF)機能を提供できます。Google Cloud Armor は、外部 HTTP(S) ロード バランシング、TCP プロキシ ロード バランシング、または SSL プロキシ ロード バランシングを使用して公開される Google Cloud ワークロードをサポートします。

Google Cloud Armor には Standard と Managed Protection Plus の 2 つのサービスティアがあります。Google Cloud Armor の高度な機能を最大限に活用するには、主要なワークロードに Managed Protection Plus を使用してください。

インフラストラクチャのプロビジョニングを自動化する

自動化を行うと、プロビジョニング後に変更できない不変のインフラストラクチャを構築できます。これにより、運用チームは既知の正常な状態を把握し、高速ロールバックやトラブルシューティングを行うことができます。自動化を行う場合は、Terraform、Jenkins、Cloud Build などのツールを使用できます。

Google Cloud では、自動化を使用する環境を簡単に構築できるように、一連のセキュリティ ブループリントを用意しています。これは、エンタープライズ基盤のブループリントに基づいています。セキュリティ基盤ブループリントでは、安全なアプリケーション環境を構築するための Google 独自の設計を提供し、Google Cloud 資産の構成とデプロイの方法が記述されています。セキュリティ基盤ブループリントに記述されている手順とスクリプトを使用して、セキュリティのベスト プラクティスとガイドラインを満たす環境を構成できます。このブループリントと追加のブループリントに基づいて構築することも、独自の自動化を設計することもできます。

自動化の詳細については、データ処理ワークフローに CI / CD パイプラインを使用するをご覧ください。

ネットワークをモニタリングする

ネットワークとトラフィックは、テレメトリーを使用してモニタリングします。

VPC フローログファイアウォール ルールのロギングを使用すると、Google Cloud 環境のトラフィックとファイアウォールの使用状況をほぼリアルタイムで可視化できます。たとえば、ファイアウォール ルールのロギングでは、Compute Engine VM インスタンスに出入りするトラフィックをロギングできます。これらのツールを Cloud LoggingCloud Monitoring と組み合わせると、トラフィックとアクセス パターンの追跡、アラート、可視化によってデプロイメントの運用面でのセキュリティを向上させることができます。

ファイアウォール インサイトを使用すると、受信接続と送信接続に一致したファイアウォール ルールを確認できます。また、接続が許可されたのか、拒否されたのかも確認できます。シャドールール機能では、別のルールが常に最初にトリガーされるために一度もトリガーされないルールを確認し、ファイアウォール構成を調整できます。

ネットワーク トポロジとアーキテクチャのパフォーマンスは、Network Intelligence Center を使用して確認します。ネットワーク パフォーマンスに関する詳細な分析情報を取得し、デプロイメントを最適化してサービスのボトルネックを解消できます。接続テストでは、ネットワーク パスに適用されるファイアウォール ルールとポリシーに関する分析情報が提供されます。

モニタリングの詳細については、ロギングと検出制御の実装をご覧ください。

次のステップ

ネットワーク セキュリティの詳細については、次のリソースをご覧ください。