「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
- Network Security Group (NSG)は、L4のパケット・フィルタ。
詳細 †
- 以下のような仕組みになっている。
- 既定値を知ると理解しやすい。
設定例 †
VMへのインバウンド設定 †
- VMのNICに既定で作成&関連付けられたNSGがある。
- 既定では、
- インバウンドはホワイトリスト
- アウトバウンドは制限なし
- ホワイト or ブラック・リスト化
- ホワイト・リスト化
優先順位の高い位置に、許可(Allow)ルールを追加
- ブラック・リスト化
優先順位の高い位置に、拒否(Deny)ルールを追加
- 優先順位
・世間一般では、ブラック・リスト化 < ホワイト・リスト化 らしい。
・故に、先ず、ホワイト・リストを見て許可、その後で、ブラック・リストを見て拒否すする。
- SRCとDSTには以下がある。
- Any
- IPアドレス(範囲指定も可能)
- サービスタグ or 仮想ネットワーク
- アプリケーション・セキュリティ・グループ
- NIC設定からサブネット設定に変更する。
- 当該サブネット向けのNSGを新規作成(既定値)。
- 使用するVMに絞ったRDP/SSHのインバウンドを許可する。
- 作成したNSGをサブネットを関連付ける。
- VMのNICに関連付けられたNSGをすべて削除する。
関連付け †
NSG はサブネットに関連付けることができる。
サブネットに接続されているすべてのリソースにその NSG のルールが適用される。
クラシック モデル †
- サブネット以外にも、個々の VM に関連付けることができる。
- これにより、トラフィックをさらに制限することができる。
Resource Manager モデル †
- サブネット以外にも、VMのNIC に関連付けることができる。
- これにより、トラフィックをさらに制限することができる。
適用順序 †
各 NSG 内の優先度に基づき、次の順番でトラフィックに適用される。
受信トラフィック †
- サブネットに適用される NSG
- NIC (Resource Manager) または VM (クラシック) に適用される NSG
送信トラフィック †
- NIC (Resource Manager) または VM (クラシック) に適用される NSG
- サブネットに適用される NSG
サービス・タグ †
IP アドレスのカテゴリに対応するシステム指定の識別子
対象となるNSG ルールのプロパティ †
既定のサービス・タグは、以下の任意のNSG ルールのプロパティで使用可能。
- 発信元アドレスのプレフィックス
- 宛先アドレスのプレフィックス
便利なサービス・タグ †
- AzureCloud?
- Storage、Sql
- AzureCosmosDB
- AzureKeyVault?
- AzureMonitor?
- AzureActiveDirectory?
サービス・タグの一覧 †
構成のポイント †
NSGの作成単位 †
VNET単位に作成、VNET中の全サブネットに関連付けると楽。
ILBに対するNSG †
- 以下のように、ネットワーク間を許可する。
- 誤) 192.168.2.0/24 → 192.168.3.100/32
- 正) 192.168.2.0/24 → 192.168.3.0/24
既定値 †
以下の3種類のサービス・タグが既定値に指定されている。
- VirtualNetwork? (Resource Manager) (クラシックの場合は VIRTUAL_NETWORK):
仮想ネットワーク アドレス空間 (Azure で定義されている CIDR 範囲) だけでなく、
すべての接続されているオンプレミス アドレス空間と接続されているVNET (ローカル ネットワーク) が含まれる。
- AzureLoadBalancer? (Resource Manager) (クラシックの場合は AZURE_LOADBALANCER):
- Azure のインフラストラクチャのロード バランサを表す。
- Azure の正常性プローブ(≒死活監視)が開始される Azure データセンター IP に変換される。
- Internet (Resource Manager) (クラシックの場合は INTERNET):
- パブリック インターネットによってアクセスできる仮想ネットワークの外部の IP アドレス空間を表す。
- Azure に所有されているパブリック IP アドレス空間がこの範囲に含まれる。
既定のルール †
概要 †
- 既定のルールでは、トラフィックが次のように許可/拒否される。
- 仮想ネットワーク
発信 / 着信トラフィックは、送信 / 受信方向の両方で許可。
- ロード バランサ
- ロード バランサによる VM の正常性プローブ(≒死活監視)を許可。
- 負荷分散セットを使用していない場合は、このルールを上書きできる。
- インターネット
- トラフィックは送信方向は許可
- 受信方向はブロックされる。
- ザックリ言って、
- アウトバウンド:全開
- インバウンド:全閉
- (Internet⇔)ロードバランサ(⇔VM死活監視):制限なし
設定 †
- 受信
# | Name | 優先順位 | 発信元 IP | 発信元ポート | 宛先 IP | 宛先ポート | プロトコル | Access |
1 | AllowVNetInBound? | 65000 | VirtualNetwork? | * | VirtualNetwork? | * | * | ALLOW |
2 | AllowAzureLoadBalancerInBound? | 65001 | AzureLoadBalancer? | * | * | * | * | ALLOW |
3 | DenyAllInBound? | 65500 | * | * | * | * | * | DENY |
- 送信
# | Name | 優先順位 | 発信元 IP | 発信元ポート | 宛先 IP | 宛先ポート | プロトコル | Access |
1 | AllowVnetOutBound? | 65000 | VirtualNetwork? | * | VirtualNetwork? | * | * | ALLOW |
2 | AllowInternetOutBound? | 65001 | * | * | Internet | * | * | ALLOW |
3 | DenyAllOutBound? | 65500 | * | * | * | * | * | DENY |
参考 †
Microsoft Docs †
その他 †
Tags: :インフラストラクチャ, :クラウド, :Azure, :セキュリティ, :通信技術