ネットワーク セキュリティ グループの有効な規則を決定する
各ネットワーク セキュリティ グループと、その定義されたセキュリティ規則は個別に評価されます。 Azure は、構成内の各仮想マシンに対して定義されている各規則の条件を処理します。
- インバウンド トラフィックの場合、Azure はまず、関連付けられているサブネットの、その次に関連付けられているネットワーク インターフェイスの、ネットワーク セキュリティ グループのセキュリティ規則を処理します。
- アウトバウンド トラフィックでは、プロセスが逆になります。 Azure はまず、関連付けられているネットワーク インターフェイスの、その次に関連付けられているサブネットの、ネットワーク セキュリティ グループのセキュリティ規則を評価します。
- インバウンドとアウトバウンドの両方の評価プロセスで、Azure はサブネット内トラフィックに規則がどのように適用されているかも確認します。
Azure が最終的に仮想マシンに定義されたセキュリティ規則をどのように適用するかによって、規則の全体的な "有効性" が決まります。
有効性セキュリティ規則について知っておくべきこと
有効な規則を生成するために、仮想ネットワーク内でネットワーク セキュリティ グループの規則がどのように定義され、処理されるかを調べてみましょう。
仮想マシン (VM) へのトラフィックを制御するネットワーク セキュリティ グループ (NSG) を示す、次の仮想ネットワーク構成について考えてみましょう。 この構成では、ネットワーク インターフェイスを介して TCP ポート 80 でインターネットとの間のネットワーク トラフィックを管理するためのセキュリティ規則が必要です。
この仮想ネットワーク構成には、3 つのサブネットがあります。 サブネット 1 には、VM 1 と VM 2 の 2 つの仮想マシンが含まれています。 サブネット 2 とサブネット 3 には、それぞれ 1 つの仮想マシン (VM 3 と VM 4) が含まれています。 各 VM には、ネットワーク インターフェイス カード (NIC) があります。
Azure は、各 NSG 構成を評価して、有効なセキュリティ規則を決定します。
評価 | サブネット NSG | NIC NSG | 受信の規則 | アウトバウンド規則 |
---|---|---|---|---|
VM 1 | サブネット 1 NSG 1 |
NIC NSG 2 |
NSG 1 サブネット規則が NSG 2 NIC の規則よりも優先される | NSG 2 NIC 規則が NSG 1 サブネットの規則よりも優先される |
VM 2 | サブネット 1 NSG 1 |
NIC なし |
NSG 1 サブネットの規則がサブネットと NIC の両方に適用される | Azure の既定の規則が NIC に適用される さらに、NSG 1 サブネットの規則がサブネットにのみ適用される |
VM 3 | サブネット 2 なし |
NIC NSG 2 |
Azure の既定の規則がサブネットに適用される さらに、NSG 2 の規則が NIC に適用される |
NSG 2 NIC の規則が NIC とサブネットに適用される |
VM 4 | サブネット 3 なし |
NIC なし |
Azure の既定の規則がサブネットと NIC の両方に適用される さらに、すべてのインバウンド トラフィックが許可される |
Azure の既定の規則がサブネットと NIC の両方に適用される さらに、すべてのアウトバウンド トラフィックが許可される |
インバウンド トラフィックの有効な規則
Azure は、構成にある全 VM のインバウンド トラフィックの規則を処理します。 Azure は、VM が NSG のメンバーかどうか、およびサブネットまたは NIC が関連付けられているかどうかを識別します。
NSG が作成されると、Azure によってグループの既定のセキュリティ規則
DenyAllInbound
が作成されます。 既定の動作では、インターネットからのインバウンド トラフィックがすべて拒否されます。 NSG にサブネットまたは NIC がある場合、サブネットまたは NIC の規則は、既定の Azure セキュリティ規則をオーバーライドできます。VM 内のサブネットの NSG インバウンド規則は、同じ VM 内の NIC の NSG インバウンド規則よりも優先されます。
アウトバウンド トラフィックの有効な規則
Azure は、まず全 VM の NIC の NSG 関連付けを調べることで、アウトバウンド トラフィックの規則を処理します。
NSG が作成されると、Azure によってグループの既定のセキュリティ規則
AllowInternetOutbound
が作成されます。 既定の動作では、インターネットへのすべてのアウトバウンド トラフィックが許可されます。 NSG にサブネットまたは NIC がある場合、サブネットまたは NIC の規則は、既定の Azure セキュリティ規則をオーバーライドできます。VM 内の NIC の NSG アウトバウンド規則は、同じ VM 内のサブネットの NSG アウトバウンド規則よりも優先されます。
有効な規則を作成するときに考慮すべきこと
仮想ネットワーク内のマシンでの有効なセキュリティ規則の作成に関する、次の考慮事項を確認してください。
全トラフィックの許可を考慮してください。 仮想マシンをサブネット内に配置したり、ネットワーク インターフェイスを利用したりする場合は、サブネットまたは NIC をネットワーク セキュリティ グループに関連付ける必要はありません。 この方法では、既定の Azure セキュリティ規則に従って、サブネットまたは NIC を介するすべてのネットワーク トラフィックが許可されます。 特定のレベルでリソースへのトラフィックを制御することに関心がない場合は、そのレベルのリソースをネットワーク セキュリティ グループに関連付けないでください。
許可規則の重要性を考慮してください。 ネットワーク セキュリティ グループを作成するときは、トラフィックを確実に通過させるために、グループ内のサブネットとネットワーク インターフェイスの両方に許可規則を定義する必要があります。 ネットワーク セキュリティ グループにサブネットまたは NIC がある場合は、各レベルで許可規則を定義する必要があります。 それ以外の場合、許可規則の定義を提供しないレベルではトラフィックが拒否されます。
サブネット内トラフィックを考慮してください。 サブネットに関連付けられているネットワーク セキュリティ グループのセキュリティ規則は、サブネット内のすべての仮想マシン間のトラフィックに影響を与える可能性があります。 Azure の既定では、同じサブネット内の仮想マシンが相互にトラフィックを送信できます ("サブネット内トラフィック" と呼ばれます)。 サブネット内トラフィックを禁止するには、ネットワーク セキュリティ グループに規則を定義して、インバウンドとアウトバウンドのすべてのトラフィックを拒否します。 この規則により、サブネット内のすべての仮想マシンが相互に通信できなくなります。
規則の優先順位を考慮してください。 ネットワーク セキュリティ グループのセキュリティ規則は、優先順位に従って処理されます。 特定のセキュリティ規則が常に処理されるようにするには、可能な限り低い優先度の値を規則に割り当てます。 優先順位の番号付けには余裕 (100、200、300 など) を残しておくことをお勧めします。 番号付けに余裕を残しておくことで、既存の規則を編集せずに新しい規則を追加できます。
有効なセキュリティ規則を表示する
複数のネットワーク セキュリティ グループがあり、どのセキュリティ規則が適用されているのかがわからない場合は、Azure portal で [有効なセキュリティ規則] リンクを使用できます。 リンクを使用して、マシン、サブネット、およびネットワーク インターフェイスに適用されているセキュリティ規則を確認できます。