説明
Compute Engine の canIpForward: true は、VM のインターフェースと異なる送信元・宛先 IP を持つパケットの転送を許可します。この設定だけでゲスト OS の転送機能が有効になったり、ルートが作成されたりするわけではありません。
通常のアプリケーションサーバーや業務用 VM では、必要のない機能です。ルーターやネットワーク機器の役割が必要な場合だけ使い、ファイアウォールとルーティングも確認してください。
想定される影響
- ゲスト設定とルートが許可すると、意図しないネットワークの中継経路が生じる場合があります。
- 不要な転送経路はネットワーク境界を弱め、セキュリティ制御を複雑にする場合があります。
対処方法
- 特定の用途で必要な場合を除き、
canIpForwardをfalseにしてください。 - ネットワーク機器の例外は承認された用途に限定し、ゲストの転送設定、ファイアウォール、ルートを併せて管理してください。変更前に、必要な接続が途切れないか確認してください。
例
Deployment Manager のサポートは終了しています。サポートされる管理ツールを使用してください。以下は IP forwarding だけを比較する既存の抜粋です。マシン、ディスク、場所など、残りの VM 設定は省略しています。
変更前
yaml
resources:
- name: vm-template
type: compute.v1.instance
properties:
canIpForward: true
変更後
yaml
resources:
- name: vm-template
type: compute.v1.instance
properties:
canIpForward: false
補足:
- 変更前: VM の IP forwarding を許可します。実際の転送はゲストとネットワーク構成にも依存します。
- 変更後: IP forwarding を無効にします。必要なネットワーク機器には、用途に合った別途の構成が必要です。