グローバル ネットワーク ファイアウォール ポリシーとルールを作成する

グローバル ネットワーク全体のネットワーク トラフィックを制御し、セキュリティを強化するには、グローバル ネットワーク ファイアウォール ポリシーとルールを使用します。グローバル ネットワーク ファイアウォール ポリシーは、複数の Virtual Private Cloud(VPC)ネットワークにわたる上り(内向き)トラフィックと下り(外向き)トラフィックの管理を一元化します。ポリシーを 1 回定義して 1 つ以上のネットワークまたはサブネットに接続することで、一貫したセキュリティ ポスチャーと管理の簡素化を実現できます。

このページでは、さまざまなトラフィック タイプのアクションを指定するルールを定義して、グローバル ネットワーク ファイアウォール ポリシーを構成する方法について説明します。送信元、宛先、プロトコル、ポートに基づいて接続を許可または拒否する方法を学習します。このページを読む前に、グローバル ネットワーク ファイアウォール ポリシーの概要で説明されているコンセプトを理解しておいてください。

グローバル ネットワーク ファイアウォール ポリシーを作成する

Google Cloud コンソールを使用してグローバル ネットワーク ファイアウォール ポリシーを作成する場合は、作成時にポリシーを VPC ネットワークに関連付けることができます。Google Cloud CLI を使用してポリシーを作成する場合は、ポリシーの作成後にポリシーをネットワークに関連付ける必要があります。

グローバル ネットワーク ファイアウォール ポリシーが関連付けられている VPC ネットワークは、グローバル ネットワーク ファイアウォール ポリシーと同じプロジェクトに存在する必要があります。

コンソール

  1. Google Cloud コンソールで、[ファイアウォール ポリシー] ページに移動します。

    [ファイアウォール ポリシー] に移動

  2. プロジェクト セレクタのリストで、組織内のプロジェクトを選択します。

  3. [ファイアウォール ポリシーを作成] をクリックします。

  4. [ポリシー名] フィールドに、ポリシーの名前を入力します。

  5. [ポリシータイプ] で [VPC ポリシー] を選択します。

  6. [デプロイのスコープ] で [グローバル] を選択します。

  7. ポリシーのルールを作成する場合は、[続行] をクリックします。

  8. [ルールを追加] セクションで、[ファイアウォール ルールを作成] をクリックします。ファイアウォール ルールの作成の詳細については、以下をご覧ください。

  9. ポリシーのパケット ミラーリング ルールを作成するには、[続行] をクリックします。

  10. [ミラーリング ルールを追加] セクションで、[ミラーリング ルールを作成] をクリックします。

    詳細については、ミラーリング ルールを含むファイアウォール ポリシーを作成するをご覧ください。

  11. ポリシーをネットワークに関連付けるには、[続行] をクリックします。

  12. [ポリシーとネットワークの関連付け] セクションで、[関連付け] をクリックします。

    詳細については、ポリシーをネットワークに関連付けるをご覧ください。

  13. [作成] をクリックします。

gcloud

gcloud compute network-firewall-policies create NETWORK_FIREWALL_POLICY_NAME \
    --description DESCRIPTION \
    --policy-type POLICY_TYPE \
    --global

次のように置き換えます。

  • NETWORK_FIREWALL_POLICY_NAME: ポリシーの名前
  • DESCRIPTION: ポリシーの説明
  • POLICY_TYPE: ネットワーク ファイアウォール ポリシーのタイプ。詳しくは、仕様をご覧ください。

ポリシーをネットワークに関連付ける

ファイアウォール ポリシーを VPC ネットワークに関連付けると、無効なルールを除くファイアウォール ポリシーのすべてのルールが VPC ネットワークに適用されます。

コンソール

  1. Google Cloud コンソールで、[ファイアウォール ポリシー] ページに移動します。

    [ファイアウォール ポリシー] に移動

  2. プロジェクト セレクタ メニューで、ポリシーを含むプロジェクトを選択します。

  3. ポリシーをクリックします。

  4. [関連付け] タブをクリックします。

  5. [関連付けを追加] をクリックします。

  6. プロジェクト内のネットワークを選択します。

  7. [関連付け] をクリックします。

gcloud

gcloud compute network-firewall-policies associations create \
    --firewall-policy POLICY_NAME \
    --network NETWORK_NAME \
    [ --name ASSOCIATION_NAME ] \
    --global-firewall-policy

次のように置き換えます。

  • POLICY_NAME: ポリシーの略称またはシステムによって生成された名前。
  • NETWORK_NAME: ネットワークの名前。
  • ASSOCIATION_NAME: 関連付けのオプションの名前。指定しない場合、名前は network-NETWORK_NAME に設定されます。

ファイアウォール ポリシールールを追加する

このセクションでは、グローバル ネットワーク ファイアウォール ポリシーにルールを追加する方法について説明します。

VM ターゲットの上り(内向き)ルールを作成する

このセクションでは、Compute Engine インスタンスのネットワーク インターフェースに適用される上り(内向き)ルールを作成する方法について説明します。

コンソール

  1. Google Cloud コンソールで、[ファイアウォール ポリシー] ページに移動します。

    [ファイアウォール ポリシー] に移動

  2. プロジェクト セレクタ リストで、グローバル ネットワーク ファイアウォール ポリシーを含むプロジェクトを選択します。

  3. [ネットワーク ファイアウォール ポリシー] セクションで、ルールを作成するグローバル ネットワーク ファイアウォール ポリシーの名前をクリックします。

  4. [ファイアウォール ルール] セクションで、[ファイアウォール ルールを作成] をクリックし、次の構成パラメータを指定します。

    1. 優先度: ルールの数値評価順序。

      ルールは、最も高い優先度から順番に評価されます(最も高い優先度は 0)。優先度はルールごとに一意である必要があります。ルールの優先度の値は、1 ずつ増やすのではなく、もっと大きな値で増やすことをおすすめします(例: 100、200、300)。これにより、後で既存のルールの間に新しいルールを作成できます。

    2. 説明: 説明を指定します(省略可)。

    3. ターゲット タイプ: [インスタンス] を選択します。

      このオプションを選択すると、Cloud NGFW は VM インスタンスをターゲットとして使用します。

    4. ターゲット: 次のいずれかを選択します。

      • すべてに適用: Cloud NGFW は、最も広範なインスタンス ターゲットを使用します。
      • サービス アカウント: 最も広範なインスタンス ターゲットを、指定したサービス アカウントを使用する VM インスタンスのネットワーク インターフェースに絞り込みます。

        • [サービス アカウントのスコープ] セクションで、[このプロジェクト] > [ターゲット サービス アカウント] を選択します。これは、グローバル ネットワーク ファイアウォール ポリシーと同じプロジェクトのサービス アカウントを指定するためです。
        • [サービス アカウントのスコープ] セクションで、[別のプロジェクト > ターゲット サービス アカウント] を選択します。これは、共有 VPC サービス プロジェクトでサービス アカウントを指定するためです。
      • セキュアタグ: 最も広範なインスタンス ターゲットを、指定した 1 つ以上のセキュアタグ値にバインドされている VM インスタンスのネットワーク インターフェースに絞り込みます。[タグのスコープを選択] をクリックし、一致するタグ値を含む組織またはプロジェクトを選択します。タグ値を追加するには、[タグを追加] をクリックします。

    5. トラフィックの方向: [上り(内向き)] を選択します。

    6. 一致したときのアクション: 次のいずれかを選択します。

      • セキュリティ プロファイル グループを適用する: 選択した目的に基づいて、パケットをファイアウォール エンドポイントまたはインターセプト エンドポイント グループに送信します。
        • Cloud NGFW ファイアウォール エンドポイントにパケットを送信するには、[Cloud NGFW Enterprise] を選択し、[セキュリティ プロファイル グループ] を選択します。パケットの TLS 検査を有効にするには、[TLS インスペクションを有効にする] を選択します。
        • インバンド統合のために Network Security Integration インターセプト エンドポイント グループにパケットを送信するには、[NSI インバンド] を選択し、[セキュリティ プロファイル グループ] を選択します。

    7. ログ: このルールに対してファイアウォール ルール ロギングを有効にするには [オン] を選択し、無効にするには [オフ] を選択します。

    8. ソース ネットワーク コンテキスト: ネットワーク コンテキストを指定します。

      • ネットワーク コンテキストによる受信トラフィックのフィルタリングをスキップするには、[すべてのネットワーク コンテキスト] を選択します。
      • インバウンド トラフィックを特定のネットワーク コンテキストにフィルタするには、[特定のネットワーク コンテキスト] を選択し、ネットワーク コンテキストを選択します。

    9. 送信元フィルタ: 追加の送信元パラメータを指定します。一部のソース パラメータは併用できません。また、ソース ネットワーク コンテキストの選択によって、使用できるソース パラメータが制限されます。詳細については、上り(内向き)ルールの送信元と上り(内向き)ルールの送信元の組み合わせをご覧ください。

      • 送信元 IPv4 の範囲でインバウンド トラフィックをフィルタするには、[IPv4] を選択し、[IP 範囲] フィールドに CIDR ブロックを入力します。任意の IPv4 送信元の場合は、0.0.0.0/0 を使用します。
      • 送信元 IPv6 の範囲でインバウンド トラフィックをフィルタするには、[IPv6] を選択し、CIDR ブロックを [IPv6 範囲] フィールドに入力します。任意の IPv6 送信元の場合は、::/0 を使用します。
      • 送信元のセキュアタグ値でインバウンド トラフィックをフィルタするには、[セキュアタグ] セクションで [タグのスコープを選択] を選択します。次に、タグキーとタグ値を指定します。タグ値を追加するには、[タグを追加] をクリックします。
      • 送信元 FQDN で受信トラフィックをフィルタするには、[FQDN] フィールドに FQDN を入力します。詳細については、FQDN オブジェクトをご覧ください。
      • 送信元の位置情報でインバウンド トラフィックをフィルタするには、[位置情報] フィールドから 1 つ以上のロケーションを選択します。詳しくは、位置情報オブジェクトをご覧ください。
      • 送信元アドレス グループでインバウンド トラフィックをフィルタするには、[アドレス グループ] フィールドから 1 つ以上のアドレス グループを選択します。詳細については、ファイアウォール ポリシーのアドレス グループをご覧ください。
      • 送信元の Google Threat Intelligence リストでインバウンド トラフィックをフィルタするには、[Google Cloud Threat Intelligence] フィールドから 1 つ以上の Google Threat Intelligence リストを選択します。詳細については、ファイアウォール ポリシールールの Google Threat Intelligence をご覧ください。

    10. 宛先: オプションの宛先パラメータを指定します。詳細については、上り(内向き)ルールの送信先をご覧ください。

      • 宛先 IP アドレスによるインバウンド トラフィックのフィルタリングをスキップするには、[なし] を選択します。
      • 宛先 IP アドレスでインバウンド トラフィックをフィルタするには、[IPv4] または [IPv6] を選択し、送信元 IPv4 範囲または送信元 IPv6 範囲と同じ形式を使用して 1 つ以上の CIDR を入力します。

    11. プロトコルとポート: ルールに一致するトラフィックのプロトコルと宛先ポートを指定します。詳細については、プロトコルとポートをご覧ください。

    12. 適用: ファイアウォール ルールを適用するかどうかを指定します。

      • 有効: ルールを作成し、新しい接続にルールの適用を開始します。
      • 無効: ルールを作成しますが、新しい接続にルールを適用しません。
  5. [作成] をクリックします。

gcloud

gcloud compute network-firewall-policies rules create PRIORITY \
    --firewall-policy=POLICY_NAME \
    --project=PROJECT_ID \
    --global-firewall-policy \ --description=DESCRIPTION \ --direction=INGRESS \ --action=ACTION \ [--enable-logging | --no-enable-logging] \ [--disabled | --no-disabled] \ [--target-secure-tags=TARGET_SECURE_TAGS] \
    [--target-service-accounts=TARGET_SERVICE_ACCOUNTS] \ [--layer4-configs=LAYER_4_CONFIGS] \ [--src-network-context=SRC_NETWORK_CONTEXT] \
    [--src-networks=SRC_VPC_NETWORKS] \ [--src-ip-ranges=SRC_IP_RANGES] \
    [--src-address-groups=SRC_ADDRESS_GROUPS] \
    [--src-fqdns=SRC_DOMAIN_NAMES] \
    [--src-secure-tags=SRC_SECURE_TAGS] \
    [--src-region-codes=SRC_COUNTRY_CODES] \
    [--src-threat-intelligence=SRC_THREAT_LIST_NAMES] \
    [--dest-ip-ranges=DEST_IP_RANGES]

次のように置き換えます。

  • PRIORITY: ポリシー内のルールの数値評価順序。ルールは、最も高い優先度から順番に評価されます(最も高い優先度は 0)。優先度はルールごとに一意である必要があります。ルールの優先度の値は、1 ずつ増やすのではなく、それ以上の差を付けて(100、200、300 など)設定することをおすすめします。そうすることで、後で既存のルールの間に新しいルールを作成できます。
  • POLICY_NAME: ルールを作成するグローバル ネットワーク ファイアウォール ポリシーの名前。
  • PROJECT_ID: グローバル ネットワーク ファイアウォール ポリシーを含むプロジェクト ID。
  • DESCRIPTION: 新しいルールの説明(省略可)。
  • ACTION: 次のいずれかのアクションを指定します。

    • apply_security_profile_group: パケットをファイアウォール エンドポイントまたはインターセプト エンドポイント グループに送信します。
      • アクションが apply_security_profile_group の場合は、--security-profile-group SECURITY_PROFILE_GROUP を含める必要があります。ここで、SECURITY_PROFILE_GROUP はセキュリティ プロファイル グループの名前です。
      • セキュリティ プロファイル グループのセキュリティ プロファイルは、Cloud NGFW ファイアウォール エンドポイントまたはインバンド統合用の Network Security Integration インターセプト エンドポイント グループを参照できます。
      • セキュリティ プロファイル グループのセキュリティ プロファイルが Cloud NGFW ファイアウォール エンドポイントを参照している場合は、--tls-inspect または --no-tls-inspect を含めて TLS 検査を有効または無効にします。
  • --enable-logging フラグと --no-enable-logging フラグは、VPC ファイアウォール ルール ロギングを有効または無効にします。
  • --disabled フラグと --no-disabled フラグは、ルールを無効(適用しない)にするか、有効(適用する)にするかを制御します。
  • ターゲットを指定します。

    • --target-secure-tags フラグと --target-service-accounts フラグの両方を省略すると、Cloud NGFW は最も広範なインスタンス ターゲットを使用します。
    • TARGET_SECURE_TAGS: セキュアタグ値のカンマ区切りリスト。最も広範なインスタンス ターゲットを、少なくとも 1 つのセキュアタグ値にバインドされている VM インスタンスのネットワーク インターフェースに絞り込みます。
    • TARGET_SERVICE_ACCOUNTS: サービス アカウントのカンマ区切りのリスト。最も広範なインスタンス ターゲットを、サービス アカウントのいずれかを使用する VM インスタンスのネットワーク インターフェースに絞り込みます。
  • LAYER_4_CONFIGS: レイヤ 4 構成のカンマ区切りのリスト。各レイヤ 4 構成は次のいずれかです。

    • 宛先ポートのない IP プロトコル名(tcp)または IANA IP プロトコル番号(6)。
    • IP プロトコル名と宛先ポートをコロン(tcp:80)で区切ったもの。
    • IP プロトコル名と宛先ポート範囲をコロンで区切り、ダッシュを使用して開始宛先ポートと終了宛先ポートを区切ります(tcp:5000-6000)。

    詳細については、プロトコルとポートをご覧ください。

  • 上り(内向き)ルールの送信元を指定します。詳細については、上り(内向き)ルールの送信元の組み合わせをご覧ください。

    • SRC_NETWORK_CONTEXT: 別のサポートされているソース パラメータと組み合わせて使用するソース ネットワーク コンテキストを定義し、ソースの組み合わせを生成します。--target-type=INSTANCES の場合の有効な値は、INTERNET、NON_INTERNET、VPC_NETWORKS、INTRA_VPC です。詳細については、ネットワーク コンテキストをご覧ください。
    • SRC_VPC_NETWORKS: URL 識別子で指定された VPC ネットワークのカンマ区切りリスト。このフラグは、--src-network-context が VPC_NETWORKS の場合にのみ指定します。
    • SRC_IP_RANGES: CIDR 形式の IP アドレス範囲のカンマ区切りのリスト。リスト内の範囲は、IPv4 CIDR または IPv6 CIDR のいずれかである必要があります。両方を組み合わせることはできません。
    • SRC_ADDRESS_GROUPS: 一意の URL 識別子で指定されたアドレス グループのカンマ区切りのリスト。リスト内のアドレス グループには、IPv4 アドレスまたは IPv6 アドレスのすべてが含まれている必要があります。両方を組み合わせることはできません。
    • SRC_DOMAIN_NAMES: ドメイン名の形式で指定された FQDN オブジェクトのカンマ区切りのリスト。
    • SRC_SECURE_TAGS: タグのカンマ区切りのリスト。--src-network-context が INTERNET の場合、--src-secure-tags フラグは使用できません。
    • SRC_COUNTRY_CODES: 2 文字の国コードのカンマ区切りのリスト。詳しくは、位置情報オブジェクトをご覧ください。--src-network-context が NON_INTERNET、VPC_NETWORKS、INTRA_VPC の場合、--src-region-codes フラグは使用できません。
    • SRC_THREAT_LIST_NAMES: Google Threat Intelligence リストの名前のカンマ区切りのリスト。詳細については、ファイアウォール ポリシールールの Google Threat Intelligence をご覧ください。--src-network-context が NON_INTERNET、VPC_NETWORKS、INTRA_VPC の場合、--src-threat-intelligence フラグは使用できません。
  • 必要に応じて、上り(内向き)ルールの宛先を指定します。

    • DEST_IP_RANGES: IP アドレス範囲のカンマ区切りのリスト(CIDR 形式)。リスト内の範囲は、IPv4 CIDR または IPv6 CIDR のいずれかである必要があります。両方を組み合わせることはできません。

内部ロードバランサ ターゲットの上り(内向き)ルールを作成する

1 つ以上の内部アプリケーション ロードバランサまたは内部プロキシ ネットワーク ロードバランサの転送ルールへのアクセスを制限するには、内部ロードバランサをターゲットとして使用する上り(内向き)ルールを少なくとも 2 つ作成します。内部アプリケーション ロードバランサと内部プロキシ ネットワーク ロードバランサのターゲットの暗黙のアクションは、上り(内向き)トラフィックを許可することです。アクセスを制限するには、次のルールを作成する必要があります。

  • --src-ip-ranges=0.0.0.0/0 フラグが設定された、優先度の低い上り(内向き)拒否ファイアウォール ルール。
  • 指定したソース パラメータを持つ、優先度の高い上り(内向き)許可ファイアウォール ルール。

内部ロードバランサ(--target-type=INTERNAL_MANAGED_LB)をターゲットとする上り(内向き)ファイアウォール ポリシー ルールを作成する場合、次の制約が適用されます。

  • ロードバランサの転送ルールで宛先 IP アドレスが定義されているため、ルールの destination パラメータを省略する必要があります。

  • ルールのレイヤ 4 構成では、TCP プロトコル(tcp または IANA IP プロトコル番号 6)のみを指定する必要があります。ロードバランサの転送ルールで宛先ポートが定義されているため、宛先ポートは省略する必要があります。

このセクションでは、内部アプリケーション ロードバランサと内部プロキシ ネットワーク ロードバランサのターゲットの上り(内向き)ルールを作成する方法について説明します。

コンソール

  1. Google Cloud コンソールで、[ファイアウォール ポリシー] ページに移動します。

    [ファイアウォール ポリシー] に移動

  2. プロジェクト セレクタ リストで、グローバル ネットワーク ファイアウォール ポリシーを含むプロジェクトを選択します。

  3. [ネットワーク ファイアウォール ポリシー] セクションで、ルールを作成するグローバル ネットワーク ファイアウォール ポリシーの名前をクリックします。

  4. [ファイアウォール ルール] セクションで、[ファイアウォール ルールを作成] をクリックし、次の構成パラメータを指定します。

    1. 優先度: ルールの数値評価順序。

      ルールは、最も高い優先度から順番に評価されます(最も高い優先度は 0)。優先度はルールごとに一意である必要があります。ルールの優先度の値は、1 ずつ増やすのではなく、もっと大きな値で増やすことをおすすめします(例: 100、200、300)。これにより、後で既存のルールの間に新しいルールを作成できます。

    2. 説明: 説明を指定します(省略可)。

    3. ターゲット タイプ: [内部ロードバランサ] を選択します。

      このオプションを選択すると、Cloud NGFW は内部アプリケーション ロードバランサと内部プロキシ ネットワーク ロードバランサをターゲットとして使用します。

    4. ターゲット: 次のいずれかを選択します。

      • すべてに適用: Cloud NGFW は、最も広範なロードバランサ ターゲットを使用します。
      • 転送ルール: 転送ルールを選択するには、次の操作を行います。
        1. [プロジェクトを選択] をクリックして、プロジェクトを選択します。
        2. [ロードバランサのタイプ] で、ロードバランサのタイプを選択します。
        3. [ロードバランサ] で、ロードバランサを選択します。
        4. [転送ルール] で、転送ルールを選択します。

    5. 一致したときのアクション: 次のいずれかを選択します。

    6. ログ: このルールに対してファイアウォール ルール ロギングを有効にするには [オン] を選択し、無効にするには [オフ] を選択します。

    7. ソース ネットワーク コンテキスト: ネットワーク コンテキストを指定します。

      • ネットワーク コンテキストによる受信トラフィックのフィルタリングをスキップするには、[すべてのネットワーク コンテキスト] を選択します。
      • インバウンド トラフィックを特定のネットワーク コンテキストにフィルタするには、[特定のネットワーク コンテキスト] を選択し、ネットワーク コンテキストを選択します。
      • VPC 内: インバウンド トラフィックは、VPC 内ネットワーク コンテキストの条件に一致する必要があります。
      • VPC ネットワーク: インバウンド トラフィックは、VPC ネットワーク コンテキストの条件に一致する必要があります。少なくとも 1 つの VPC ネットワークを選択する必要があります。
        • 現在のプロジェクトを選択: ファイアウォール ポリシーを含むプロジェクトから 1 つ以上の VPC ネットワークを追加できます。
        • ネットワークを手動で入力: プロジェクトと VPC ネットワークを手動で入力できます。
        • プロジェクトを選択: VPC ネットワークを選択できるプロジェクトを選択できます。
    8. 送信元フィルタ: 追加の送信元パラメータを指定します。一部のソース パラメータは併用できません。また、ソース ネットワーク コンテキストの選択によって、使用できるソース パラメータが制限されます。詳細については、上り(内向き)ルールの送信元と上り(内向き)ルールの送信元の組み合わせをご覧ください。

      • 送信元 IPv4 の範囲でインバウンド トラフィックをフィルタするには、[IPv4] を選択し、[IP 範囲] フィールドに CIDR ブロックを入力します。任意の IPv4 送信元の場合は、0.0.0.0/0 を使用します。
      • 送信元 IPv6 の範囲でインバウンド トラフィックをフィルタするには、[IPv6] を選択し、CIDR ブロックを [IPv6 範囲] フィールドに入力します。任意の IPv6 送信元の場合は、::/0 を使用します。
      • 送信元 FQDN で受信トラフィックをフィルタするには、[FQDN] フィールドに FQDN を入力します。詳細については、FQDN オブジェクトをご覧ください。
      • 送信元アドレス グループでインバウンド トラフィックをフィルタするには、[アドレス グループ] フィールドから 1 つ以上のアドレス グループを選択します。詳細については、ファイアウォール ポリシーのアドレス グループをご覧ください。

    9. 適用: ファイアウォール ルールを適用するかどうかを指定します。

      • 有効: ルールを作成し、新しい接続にルールの適用を開始します。
      • 無効: ルールを作成しますが、新しい接続にルールを適用しません。
  5. [作成] をクリックします。

gcloud

gcloud compute network-firewall-policies rules create PRIORITY \
    --firewall-policy=POLICY_NAME \
    --project=PROJECT_ID \
    --global-firewall-policy \ --description=DESCRIPTION \ --direction=INGRESS \ --action=ACTION \ [--enable-logging | --no-enable-logging] \ [--disabled | --no-disabled] \ --target-type=INTERNAL_MANAGED_LB \
    [--target-forwarding-rules=TARGET_FORWARDING_RULES] \ [--layer4-configs=LAYER_4_CONFIGS] \ [--src-network-context=SRC_NETWORK_CONTEXT] \
    [--src-networks=SRC_VPC_NETWORKS] \ [--src-ip-ranges=SRC_IP_RANGES] \
    [--src-address-groups=SRC_ADDRESS_GROUPS] \
    [--src-fqdns=SRC_DOMAIN_NAMES]

次のように置き換えます。

  • PRIORITY: ポリシー内のルールの数値評価順序。ルールは、最も高い優先度から順番に評価されます(最も高い優先度は 0)。優先度はルールごとに一意である必要があります。ルールの優先度の値は、1 ずつ増やすのではなく、それ以上の差を付けて(100、200、300 など)設定することをおすすめします。そうすることで、後で既存のルールの間に新しいルールを作成できます。
  • POLICY_NAME: ルールを作成するグローバル ネットワーク ファイアウォール ポリシーの名前。
  • PROJECT_ID: グローバル ネットワーク ファイアウォール ポリシーを含むプロジェクト ID。
  • DESCRIPTION: 新しいルールの説明(省略可)。
  • ACTION: 次のいずれかのアクションを指定します。

  • --enable-logging フラグと --no-enable-logging フラグは、VPC ファイアウォール ルール ロギングを有効または無効にします。
  • --disabled フラグと --no-disabled フラグは、ルールを無効(適用しない)にするか、有効(適用する)にするかを制御します。
  • ターゲットを指定します。

    • --target-forwarding-rules フラグを省略すると、Cloud NGFW は最も広範なロードバランサ ターゲットを使用します。
    • TARGET_FORWARDING_RULES: ターゲット転送ルールの形式で指定された内部アプリケーション ロードバランサまたは内部プロキシ ネットワーク ロードバランサの単一の転送ルール。このパラメータは、最も広範なロードバランサ ターゲットを特定の内部アプリケーション ロードバランサまたは内部プロキシ ネットワーク ロードバランサに絞り込みます。
  • LAYER_4_CONFIGS: tcp または IANA プロトコル番号 6 を指定します。内部ロードバランサ(INTERNAL_MANAGED_LB)をターゲットとするファイアウォール ルールは、TCP プロトコルのみをサポートします。宛先ポートまたはポート範囲は指定しないでください。フィルタリングは、ロードバランサの転送ルールに送信されるすべてのトラフィックに適用されます。
  • 上り(内向き)ルールの送信元を指定します。詳細については、上り(内向き)ルールの送信元の組み合わせをご覧ください。

    • SRC_NETWORK_CONTEXT: 別のサポートされているソース パラメータと組み合わせて使用するソース ネットワーク コンテキストを定義し、ソースの組み合わせを生成します。--target-type=INTERNAL_MANAGED_LB の場合、有効な値は VPC_NETWORKS または INTRA_VPC です。詳細については、ネットワーク コンテキストをご覧ください。
    • SRC_VPC_NETWORKS: URL 識別子で指定された VPC ネットワークのカンマ区切りリスト。このフラグは、--src-network-context が VPC_NETWORKS の場合にのみ指定します。
    • SRC_IP_RANGES: CIDR 形式の IP アドレス範囲のカンマ区切りのリスト。リスト内の範囲は、IPv4 CIDR または IPv6 CIDR のいずれかである必要があります。両方を組み合わせることはできません。
    • SRC_ADDRESS_GROUPS: 一意の URL 識別子で指定されたアドレス グループのカンマ区切りのリスト。リスト内のアドレス グループには、IPv4 アドレスまたは IPv6 アドレスのすべてが含まれている必要があります。両方を組み合わせることはできません。
    • SRC_DOMAIN_NAMES: ドメイン名の形式で指定された FQDN オブジェクトのカンマ区切りのリスト。

ロードバランサにセキュリティ プロファイル グループを適用する上り(内向き)ルールを作成する

ロードバランサのトラフィックにアプリケーション レイヤ検査サービスを適用するには、apply_security_profile_group アクションを含むルールを作成します。このルールは、クロスリージョン内部アプリケーション ロードバランサに属する特定の転送ルールをターゲットにする必要があります。

gcloud

特定のクロスリージョン内部アプリケーション ロードバランサにアプリケーション レイヤの検査を適用するファイアウォール ルールを作成するには、gcloud compute network-firewall-policies rules create コマンドを使用します。

gcloud compute network-firewall-policies rules create PRIORITY \
   --action=apply_security_profile_group \
   --security-profile-group=SECURITY_PROFILE_GROUP_NAME \
   --firewall-policy=NETWORK_FIREWALL_POLICY_NAME \
   --global-firewall-policy \
   --direction=INGRESS \
   --target-type=INTERNAL_MANAGED_LB \
   --target-forwarding-rules=CROSS_REGION_ALB_FORWARDING_RULE

次のように置き換えます。

  • PRIORITY: ルールの一意の優先度。
  • SECURITY_PROFILE_GROUP_NAME: セキュリティ プロファイル グループ リソースの完全 URI または部分 URI。
  • NETWORK_FIREWALL_POLICY_NAME: グローバル ネットワーク ファイアウォール ポリシーの名前。
  • CROSS_REGION_ALB_FORWARDING_RULE: 転送ルールの相対リソース名(projects/ PROJECT_ID/global/forwardingRules/ FORWARDING_RULE_NAME の形式)。

VM ターゲットの下り(外向き)ルールを作成する

次の手順では、下り(外向き)ルールを作成する方法を示します。下り(外向き)ルールは、Compute Engine インスタンスのネットワーク インターフェースであるターゲットにのみ適用されます。

コンソール

  1. Google Cloud コンソールで、[ファイアウォール ポリシー] ページに移動します。

    [ファイアウォール ポリシー] に移動

  2. プロジェクト セレクタ リストで、グローバル ネットワーク ファイアウォール ポリシーを含むプロジェクトを選択します。

  3. [ネットワーク ファイアウォール ポリシー] セクションで、ルールを作成するグローバル ネットワーク ファイアウォール ポリシーの名前をクリックします。

  4. [ファイアウォール ルール] セクションで、[ファイアウォール ルールを作成] をクリックし、次の構成パラメータを指定します。

    1. 優先度: ルールの数値評価順序。

      ルールは、最も高い優先度から順番に評価されます(最も高い優先度は 0)。優先度はルールごとに一意である必要があります。ルールの優先度の値は、1 ずつ増やすのではなく、もっと大きな値で増やすことをおすすめします(例: 100、200、300)。これにより、後で既存のルールの間に新しいルールを作成できます。

    2. 説明: 説明を指定します(省略可)。

    3. ターゲット タイプ: [インスタンス] を選択します。

      このオプションを選択すると、Cloud NGFW は VM インスタンスをターゲットとして使用します。

    4. ターゲット: 次のいずれかを選択します。

      • すべてに適用: Cloud NGFW は、最も広範なインスタンス ターゲットを使用します。
      • サービス アカウント: 最も広範なインスタンス ターゲットを、指定したサービス アカウントを使用する VM インスタンスのネットワーク インターフェースに絞り込みます。

        • [サービス アカウントのスコープ] セクションで、[このプロジェクト] > [ターゲット サービス アカウント] を選択します。これは、グローバル ネットワーク ファイアウォール ポリシーと同じプロジェクトのサービス アカウントを指定するためです。
        • [サービス アカウントのスコープ] セクションで、[別のプロジェクト > ターゲット サービス アカウント] を選択します。これは、共有 VPC サービス プロジェクトでサービス アカウントを指定するためです。
      • セキュアタグ: 最も広範なインスタンス ターゲットを、指定した 1 つ以上のセキュアタグ値にバインドされている VM インスタンスのネットワーク インターフェースに絞り込みます。[タグのスコープを選択] をクリックし、一致するタグ値を含む組織またはプロジェクトを選択します。タグ値を追加するには、[タグを追加] をクリックします。

    5. トラフィックの方向: [下り(外向き)] を選択します。

    6. 一致したときのアクション: 次のいずれかを選択します。

      • セキュリティ プロファイル グループを適用する: 選択した目的に基づいて、パケットをファイアウォール エンドポイントまたはインターセプト エンドポイント グループに送信します。
        • Cloud NGFW ファイアウォール エンドポイントにパケットを送信するには、[Cloud NGFW Enterprise] を選択し、[セキュリティ プロファイル グループ] を選択します。パケットの TLS 検査を有効にするには、[TLS インスペクションを有効にする] を選択します。
        • インバンド統合のために Network Security Integration インターセプト エンドポイント グループにパケットを送信するには、[NSI インバンド] を選択し、[セキュリティ プロファイル グループ] を選択します。

    7. ログ: このルールに対してファイアウォール ルール ロギングを有効にするには [オン] を選択し、無効にするには [オフ] を選択します。

    8. 宛先ネットワーク コンテキスト: ネットワーク コンテキストを指定します。

    9. 宛先フィルタ: 追加の宛先パラメータを指定します。一部の宛先パラメータは併用できません。宛先ネットワーク コンテキストの選択によって、使用できる宛先フィルタが制限されます。詳細については、下り(外向き)ルールの送信先と下り(外向き)ルールの送信先の組み合わせをご覧ください。

      • 送信トラフィックを送信先 IPv4 範囲でフィルタするには、[IPv4] を選択し、[IP 範囲] フィールドに CIDR ブロックを入力します。任意の IPv4 送信先の場合は、0.0.0.0/0 を使用します。
      • 送信トラフィックを送信先 IPv6 範囲でフィルタするには、[IPv6] を選択し、CIDR ブロックを [IPv6 範囲] フィールドに入力します。任意の IPv6 送信先の場合は、::/0 を使用します。
      • 送信トラフィックを送信先 FQDN でフィルタするには、[FQDN] フィールドに FQDN を入力します。詳細については、FQDN オブジェクトをご覧ください。
      • 送信トラフィックを送信先の位置情報でフィルタするには、[位置情報] フィールドから 1 つ以上のロケーションを選択します。詳しくは、位置情報オブジェクトをご覧ください。
      • 送信トラフィックを宛先アドレス グループでフィルタするには、[アドレス グループ] フィールドから 1 つ以上のアドレス グループを選択します。詳細については、ファイアウォール ポリシーのアドレス グループをご覧ください。
      • 宛先の Google Threat Intelligence リストで送信トラフィックをフィルタするには、[Google Cloud Threat Intelligence] フィールドから 1 つ以上の Google Threat Intelligence リストを選択します。詳細については、ファイアウォール ポリシー ルールの Google Threat Intelligence をご覧ください。

    10. ソース: オプションのソース パラメータを指定します。詳細については、下り(外向き)ルールの送信元をご覧ください。

      • 送信元 IP アドレスによる送信トラフィックのフィルタリングをスキップするには、[なし] を選択します。
      • 送信元 IP アドレスで送信トラフィックをフィルタするには、[IPv4] または [IPv6] を選択し、宛先 IPv4 範囲または宛先 IPv6 範囲と同じ形式を使用して 1 つ以上の CIDR を入力します。

    11. プロトコルとポート: ルールに一致するトラフィックのプロトコルと宛先ポートを指定します。詳細については、プロトコルとポートをご覧ください。

    12. 適用: ファイアウォール ルールを適用するかどうかを指定します。

      • 有効: ルールを作成し、新しい接続にルールの適用を開始します。
      • 無効: ルールを作成しますが、新しい接続にルールを適用しません。
  5. [作成] をクリックします。

gcloud

gcloud compute network-firewall-policies rules create PRIORITY \
    --firewall-policy=POLICY_NAME \
    --project=PROJECT_ID \
    --global-firewall-policy \ --description=DESCRIPTION \ --direction=EGRESS \ --action=ACTION \ [--enable-logging | --no-enable-logging] \ [--disabled | --no-disabled] \ [--target-secure-tags=TARGET_SECURE_TAGS] \
    [--target-service-accounts=TARGET_SERVICE_ACCOUNTS] \ [--layer4-configs=LAYER_4_CONFIGS] \ [--dest-network-context=DEST_NETWORK_CONTEXT] \ [--dest-ip-ranges=DEST_IP_RANGES] \
    [--dest-address-groups=DEST_ADDRESS_GROUPS] \
    [--dest-fqdns=DEST_DOMAIN_NAMES] \
    [--dest-region-codes=DEST_COUNTRY_CODES] \
    [--dest-threat-intelligence=DEST_THREAT_LIST_NAMES] \
    [--src-ip-ranges=SRC_IP_RANGES]

次のように置き換えます。

  • PRIORITY: ポリシー内のルールの数値評価順序。ルールは、最も高い優先度から順番に評価されます(最も高い優先度は 0)。優先度はルールごとに一意である必要があります。ルールの優先度の値は、1 ずつ増やすのではなく、それ以上の差を付けて(100、200、300 など)設定することをおすすめします。そうすることで、後で既存のルールの間に新しいルールを作成できます。
  • POLICY_NAME: ルールを作成するグローバル ネットワーク ファイアウォール ポリシーの名前。
  • PROJECT_ID: グローバル ネットワーク ファイアウォール ポリシーを含むプロジェクト ID。
  • DESCRIPTION: 新しいルールの説明(省略可)。
  • ACTION: 次のいずれかのアクションを指定します。

    • apply_security_profile_group: パケットをファイアウォール エンドポイントまたはインターセプト エンドポイント グループに送信します。
      • アクションが apply_security_profile_group の場合は、--security-profile-group SECURITY_PROFILE_GROUP を含める必要があります。ここで、SECURITY_PROFILE_GROUP はセキュリティ プロファイル グループの名前です。
      • セキュリティ プロファイル グループのセキュリティ プロファイルは、Cloud NGFW ファイアウォール エンドポイントまたはインバンド統合用の Network Security Integration インターセプト エンドポイント グループを参照できます。
      • セキュリティ プロファイル グループのセキュリティ プロファイルが Cloud NGFW ファイアウォール エンドポイントを参照している場合は、--tls-inspect または --no-tls-inspect を含めて TLS 検査を有効または無効にします。
  • --enable-logging フラグと --no-enable-logging フラグは、VPC ファイアウォール ルール ロギングを有効または無効にします。
  • --disabled フラグと --no-disabled フラグは、ルールを無効(適用しない)にするか、有効(適用する)にするかを制御します。
  • ターゲットを指定します。

    • --target-secure-tags フラグと --target-service-accounts フラグの両方を省略すると、Cloud NGFW は最も広範なインスタンス ターゲットを使用します。
    • TARGET_SECURE_TAGS: セキュアタグ値のカンマ区切りリスト。最も広範なインスタンス ターゲットを、少なくとも 1 つのセキュアタグ値にバインドされている VM インスタンスのネットワーク インターフェースに絞り込みます。
    • TARGET_SERVICE_ACCOUNTS: サービス アカウントのカンマ区切りのリスト。最も広範なインスタンス ターゲットを、サービス アカウントのいずれかを使用する VM インスタンスのネットワーク インターフェースに絞り込みます。
  • LAYER_4_CONFIGS: レイヤ 4 構成のカンマ区切りのリスト。各レイヤ 4 構成は次のいずれかです。

    • 宛先ポートのない IP プロトコル名(tcp)または IANA IP プロトコル番号(6)。
    • IP プロトコル名と宛先ポートをコロン(tcp:80)で区切ったもの。
    • IP プロトコル名と宛先ポート範囲をコロンで区切り、宛先ポートの開始と終了をダッシュで区切る(tcp:5000-6000)。

    詳細については、プロトコルとポートをご覧ください。

  • 下り(外向き)ルールの送信先を指定します。詳細については、下り(外向き)ルールの宛先の組み合わせをご覧ください。

    • DEST_NETWORK_CONTEXT: 別のサポートされている宛先パラメータと組み合わせて使用する宛先ネットワーク コンテキストを定義し、宛先の組み合わせを生成します。有効な値は INTERNET と NON_INTERNET です。詳細については、ネットワーク コンテキストをご覧ください。
    • DEST_IP_RANGES: CIDR 形式の IP アドレス範囲のカンマ区切りのリスト。リスト内の範囲は、IPv4 CIDR または IPv6 CIDR のいずれかである必要があります。両方を組み合わせることはできません。
    • DEST_ADDRESS_GROUPS: 一意の URL 識別子で指定されたアドレス グループのカンマ区切りのリスト。
    • DEST_DOMAIN_NAMES: ドメイン名の形式で指定された FQDN オブジェクトのカンマ区切りのリスト。
    • DEST_COUNTRY_CODES: 2 文字の国コードのカンマ区切りのリスト。詳しくは、位置情報オブジェクトをご覧ください。
    • DEST_THREAT_LIST_NAMES: Google Threat Intelligence リストの名前のカンマ区切りのリスト。詳細については、ファイアウォール ポリシー ルールの Google Threat Intelligence をご覧ください。
  • 必要に応じて、下り(外向き)ルールの送信元を指定します。

    • SRC_IP_RANGES: CIDR 形式の IP アドレス範囲のカンマ区切りのリスト。リスト内の範囲は、IPv4 CIDR または IPv6 CIDR のいずれかである必要があります。両方を組み合わせることはできません。

次のステップ