GCP - VPC & Networking
GCP Compute Networking in a Nutshell
VPCsには、VPCへの着信トラフィックを許可するFirewallルールが含まれています。VPCsには、仮想マシンが接続される subnetworksも含まれています。 AWSと比較すると、FirewallはAWSのSecurity Groups and NACLsに最も近いものですが、この場合、これらは各インスタンスではなくVPCに定義されています。
VPC, Subnetworks & Firewalls in GCP
Compute InstancesはVPCs(Virtual Private Clouds)の一部であるsubnetworksに接続されています。GCPにはセキュリティグループはなく、VPC firewallsがあり、ネットワークレベルで定義されたルールが各VMインスタンスに適用されます。
Subnetworks
VPCは複数のsubnetworksを持つことができます。各subnetworkは1つのリージョンにあります。
Firewalls
デフォルトでは、すべてのネットワークには2つの暗黙のファイアウォールルールがあります:アウトバウンドを許可し、インバウンドを拒否します。
GCPプロジェクトが作成されると、**default
**という名前のVPCも作成され、次のファイアウォールルールが設定されます:
default-allow-internal:
default
ネットワーク上の他のインスタンスからのすべてのトラフィックを許可default-allow-ssh: どこからでも22を許可
default-allow-rdp: どこからでも3389を許可
default-allow-icmp: どこからでもpingを許可
ご覧のとおり、ファイアウォールルールは内部IPアドレスに対してより寛容である傾向があります。デフォルトのVPCは、Compute Instances間のすべてのトラフィックを許可します。
デフォルトのVPCまたは新しいVPCのために、さらに多くのファイアウォールルールを作成することができます。ファイアウォールルールは、次の方法でインスタンスに適用できます:
VPC内のすべてのインスタンス
残念ながら、インターネット上で開いているポートを持つすべてのCompute Instancesを出力する簡単なgcloud
コマンドはありません。ファイアウォールルール、ネットワークタグ、サービスアカウント、およびインスタンスの間の関連性を見つける必要があります。
このプロセスはこのpythonスクリプトを使用して自動化され、次のものをエクスポートします:
インスタンス、パブリックIP、許可されたTCP、許可されたUDPを示すCSVファイル
パブリックインターネット(0.0.0.0/0)からの着信が許可されているポートでのすべてのインスタンスをターゲットとするnmapスキャン
パブリックインターネット(0.0.0.0/0)からすべてのTCPポートが許可されているインスタンスの完全なTCP範囲をターゲットとするmasscan
Hierarchical Firewall Policies
_Hierarchical firewall policies_を使用すると、組織全体で一貫したファイアウォールポリシーを作成および適用できます。組織全体または個々のフォルダーに階層的なファイアウォールポリシーを割り当てることができます。これらのポリシーには、接続を明示的に拒否または許可するルールが含まれます。
ファイアウォールポリシーを作成して適用するのは別々のステップです。ファイアウォールポリシーは、リソース階層の組織またはフォルダーノードで作成および適用できます。ファイアウォールポリシールールは、接続をブロック、接続を許可、またはファイアウォールルールの評価を下位フォルダーまたはVPCネットワークに定義されたVPCファイアウォールルールに委ねることができます。
デフォルトでは、すべての階層的なファイアウォールポリシールールは、ポリシーが関連付けられている組織またはフォルダーの下のすべてのプロジェクトのすべてのVMに適用されます。ただし、ターゲットネットワークまたはターゲットサービスアカウントを指定することで、特定のVMにのみルールを適用することができます。
階層的なファイアウォールポリシーを作成する方法についてはこちらを参照してください。
Firewall Rules Evaluation
Org: 組織に割り当てられたファイアウォールポリシー
Folder: フォルダーに割り当てられたファイアウォールポリシー
VPC: VPCに割り当てられたファイアウォールルール
Global: VPCに割り当てられる別のタイプのファイアウォールルール
Regional: VMのNICおよびリージョンのVPCネットワークに関連付けられたファイアウォールルール
VPC Network Peering
2つのVirtual Private Cloud (VPC)ネットワークを接続し、各ネットワークのリソースが相互に通信できるようにします。 ピアリングされたVPCネットワークは、同じプロジェクト、同じ組織の異なるプロジェクト、または異なる組織の異なるプロジェクトに存在することができます。
必要な権限は次のとおりです:
compute.networks.addPeering
compute.networks.updatePeering
compute.networks.removePeering
compute.networks.listPeeringRoutes
References
Last updated