ネットワーク セキュリティ グループによるネットワーク トラフィックのフィルタリングFilter network traffic with network security groups

ネットワーク セキュリティ グループ (NSG) には、Azure Virtual Network (VNet) に接続されたリソースへのネットワーク トラフィックを許可または拒否する一連のセキュリティ規則が含まれています。A network security group (NSG) contains a list of security rules that allow or deny network traffic to resources connected to Azure Virtual Networks (VNet). NSG はサブネットに関連付けることができるほか、クラシック モデルについては個々の VM に、Resource Manager モデルについては VM にアタッチされた個々のネットワーク インターフェイス (NIC) に関連付けることができます。NSGs can be associated to subnets, individual VMs (classic), or individual network interfaces (NIC) attached to VMs (Resource Manager). NSG をサブネットに関連付けた場合、そのサブネットに接続されているすべてのリソースにその NSG のルールが適用されます。When an NSG is associated to a subnet, the rules apply to all resources connected to the subnet. 加えて VM や NIC にも NSG を関連付けることで、トラフィックをさらに制限することができます。Traffic can further be restricted by also associating an NSG to a VM or NIC.

注意

Azure には、リソースの作成と操作に関して、Resource Manager とクラシックの 2 種類のデプロイメント モデルがあります。Azure has two different deployment models for creating and working with resources: Resource Manager and classic. この記事では、両方のモデルについて取り上げていますが、最新のデプロイではリソース マネージャー モデルの使用をお勧めします。This article covers using both models, but Microsoft recommends that most new deployments use the Resource Manager model.

NSG リソースNSG resource

NSG には、次のプロパティが含まれています。NSGs contain the following properties:

プロパティProperty DescriptionDescription 制約Constraints 考慮事項Considerations
NameName NSG の名前Name for the NSG リージョン内で一意にする必要があります。Must be unique within the region.
文字、数字、アンダースコア、ピリオド、ハイフンを使用できます。Can contain letters, numbers, underscores, periods, and hyphens.
先頭は文字か数字にします。Must start with a letter or number.
末尾は文字、数字、アンダー スコアのいずれかにします。Must end with a letter, number, or underscore.
80 文字を超えないようにしてください。Cannot exceed 80 characters.
複数の NSG の作成が必要になることがあるため、NSG の機能が識別しやすくなる名前付け規則を用意してください。Since you may need to create several NSGs, make sure you have a naming convention that makes it easy to identify the function of your NSGs.
リージョンRegion NSG が作成される Azure リージョンAzure region where the NSG is created. NSG は、その NSG と同じリージョン内のリソースにのみ関連付けることができます。NSGs can only be associated to resources within the same region as the NSG. リージョンごとの NSG 数の上限については、Azure の制限に関する記事を参照してください。To learn about how many NSGs you can have per region, read the Azure limits article.
リソース グループResource group NSG が存在するリソース グループThe resource group the NSG exists in. NSG はリソース グループに存在しますが、リソースが NSG と同じ Azure リージョン内にあれば、任意のリソース グループ内のリソースに関連付けることができます。Although an NSG exists in a resource group, it can be associated to resources in any resource group, as long as the resource is part of the same Azure region as the NSG. リソース グループは、複数のリソースをデプロイ ユニットとしてまとめて管理する目的で使用されます。Resource groups are used to manage multiple resources together, as a deployment unit.
たとえば NSG は、それが関連付けられているリソースにまとめることができます。You may consider grouping the NSG with resources it is associated to.
ルールRules 許可するトラフィックと拒否するトラフィックを定義する受信規則または送信規則。Inbound or outbound rules that define what traffic is allowed or denied. この記事の「NSG ルール」のセクションを参照してください。See the NSG rules section of this article.

注意

エンドポイント ベースの ACL とネットワーク セキュリティ グループは、同じ VM インスタンスではサポートされません。Endpoint-based ACLs and network security groups are not supported on the same VM instance. エンドポイントの ACL が既に導入されている場合に NSG を使用するには、初めにエンドポイントの ACL を削除します。If you want to use an NSG and have an endpoint ACL already in place, first remove the endpoint ACL. ACL を削除する方法については、PowerShell を使用してエンドポイントのアクセス制御リスト (ACL) を管理する方法についての記事を参照してください。To learn how to remove an ACL, read the Managing Access Control Lists (ACLs) for Endpoints by using PowerShell article.

NSG ルールNSG rules

NSG ルールには、次のプロパティが含まれています。NSG rules contain the following properties:

プロパティProperty DescriptionDescription 制約Constraints 考慮事項Considerations
名前Name ルールの名前。Name for the rule. リージョン内で一意にする必要があります。Must be unique within the region.
文字、数字、アンダースコア、ピリオド、ハイフンを使用できます。Can contain letters, numbers, underscores, periods, and hyphens.
先頭は文字か数字にします。Must start with a letter or number.
末尾は文字、数字、アンダー スコアのいずれかにします。Must end with a letter, number, or underscore.
80 文字を超えないようにしてください。Cannot exceed 80 characters.
1 つの NSG 内に複数のルールを作成することがあるため、ルールの機能を識別できる名前付け規則に準拠してください。You may have several rules within an NSG, so make sure you follow a naming convention that allows you to identify the function of your rule.
プロトコルProtocol ルールに関して一致するプロトコル。Protocol to match for the rule. TCP、UDP、または *TCP, UDP, or * * をプロトコルとして使用すると、UDP と TCP のほかに ICMP (East-West トラフィックのみ) も含まれ、必要なルール数を減らすことができます。Using * as a protocol includes ICMP (East-West traffic only), as well as UDP and TCP, and may reduce the number of rules you need.
一方で、* を使用すると対象範囲が広くなりすぎることがあるため、その使用は必要な場合に限定してください。At the same time, using * might be too broad an approach, so it's recommended that you use * only when necessary.
発信元ポート範囲Source port range ルールに関して一致するソース ポート範囲。Source port range to match for the rule. 1 から 65535 までの 1 つのポート番号、ポート範囲 (1 ~ 65535 など)、または * (すべてのポート)。Single port number from 1 to 65535, port range (example: 1-65535), or * (for all ports). 発信元は、短期ポートである場合があります。Source ports could be ephemeral. クライアント プログラムで決まったポートを使用している場合以外、通常は * を使用してください。Unless your client program is using a specific port, use * in most cases.
複数のルールを設定する必要がないように、できるだけポート範囲を使用してください。Try to use port ranges as much as possible to avoid the need for multiple rules.
複数のポートまたは複数のポート範囲をコンマでグループ化することはできません。Multiple ports or port ranges cannot be grouped by a comma.
宛先ポート範囲Destination port range ルールに関して一致する宛先ポート範囲。Destination port range to match for the rule. 1 から 65535 までの 1 つのポート番号、ポート範囲 (1 ~ 65535 など)、または * (すべてのポート)。Single port number from 1 to 65535, port range (example: 1-65535), or * (for all ports). 複数のルールを設定する必要がないように、できるだけポート範囲を使用してください。Try to use port ranges as much as possible to avoid the need for multiple rules.
複数のポートまたは複数のポート範囲をコンマでグループ化することはできません。Multiple ports or port ranges cannot be grouped by a comma.
発信元アドレスのプレフィックスSource address prefix ルールに関して一致する発信元アドレスのプレフィックスまたはタグ。Source address prefix or tag to match for the rule. 1 つの IP アドレス (例: 10.10.10.10)、IP サブネット (例: 192.168.1.0/24)、既定のタグ、または * (すべてのアドレス)。Single IP address (example: 10.10.10.10), IP subnet (example: 192.168.1.0/24), default tag, or * (for all addresses). ルールの数を減らすには、範囲、既定のタグ、* の使用を検討してください。Consider using ranges, default tags, and * to reduce the number of rules.
宛先アドレスのプレフィックスDestination address prefix ルールに関して一致する宛先アドレスのプレフィックスまたはタグ。Destination address prefix or tag to match for the rule. 1 つの IP アドレス (例: 10.10.10.10)、IP サブネット (例: 192.168.1.0/24)、既定のタグ、または * (すべてのアドレス)。Single IP address (example: 10.10.10.10), IP subnet (example: 192.168.1.0/24), default tag, or * (for all addresses). ルールの数を減らすには、範囲、既定のタグ、* の使用を検討してください。Consider using ranges, default tags, and * to reduce the number of rules.
方向Direction ルールに関して一致するトラフィックの方向。Direction of traffic to match for the rule. 受信または送信。Inbound or outbound. 受信ルールと送信ルールは方向に基づいて個別に処理されます。Inbound and outbound rules are processed separately, based on direction.
優先順位Priority ルールは、優先順位に従ってチェックされます。Rules are checked in the order of priority. いずれかのルールが適用されると、それ以上はルールの一致テストが行われなくなります。Once a rule applies, no more rules are tested for matching. 100 ~ 4096 の数値Number between 100 and 4096. 今後新しいルールを追加する余地を残すために、各ルールの優先度の数値を 100 ずつ飛ばして設定することを検討してください。Consider creating rules jumping priorities by 100 for each rule to leave space for new rules you might create in the future.
Access (アクセス)Access ルールが一致した場合に適用されるアクセスの種類。Type of access to apply if the rule matches. 許可または拒否。Allow or deny. パケットに一致する許可ルールが見つからない場合はパケットが削除されることに留意してください。Keep in mind that if an allow rule is not found for a packet, the packet is dropped.

NSG には受信と送信の 2 つのルール セットがあります。NSGs contain two sets of rules: Inbound and outbound. ルールの優先順位は、各セット内で一意である必要があります。The priority for a rule must be unique within each set.

NSG ルールの処理

上図に、NSG ルールの処理方法を示します。The previous picture shows how NSG rules are processed.

既定のタグDefault Tags

既定のタグは、IP アドレスのカテゴリに対応するシステム指定の識別子です。Default tags are system-provided identifiers to address a category of IP addresses. 既定のタグは、任意のルールの発信元アドレスのプレフィックスおよび宛先アドレスのプレフィックス プロパティで使用できます。You can use default tags in the source address prefix and destination address prefix properties of any rule. 使用できる既定のタグは 3 種類あります。There are three default tags you can use:

  • VirtualNetwork (Resource Manager) (クラシックの場合は VIRTUAL_NETWORK): このタグには、仮想ネットワーク アドレス空間 (Azure で定義されている CIDR 範囲) だけでなく、すべての接続されているオンプレミス アドレス空間と接続されている Azure VNet (ローカル ネットワーク) が含まれます。VirtualNetwork (Resource Manager) (VIRTUAL_NETWORK for classic): This tag includes the virtual network address space (CIDR ranges defined in Azure), all connected on-premises address spaces, and connected Azure VNets (local networks).
  • AzureLoadBalancer (Resource Manager) (クラシックの場合は AZURE_LOADBALANCER): このタグは、Azure のインフラストラクチャのロード バランサーを表します。AzureLoadBalancer (Resource Manager) (AZURE_LOADBALANCER for classic): This tag denotes Azure’s infrastructure load balancer. このタグは、Azure の正常性プローブが開始される Azure データセンター IP に変換されます。The tag translates to an Azure datacenter IP where Azure’s health probes originate.
  • Internet (Resource Manager) (クラシックの場合は INTERNET): このタグは、パブリック インターネットによってアクセスできる仮想ネットワークの外部の IP アドレス空間を表します。Internet (Resource Manager) (INTERNET for classic): This tag denotes the IP address space that is outside the virtual network and reachable by public Internet. Azure に所有されているパブリック IP アドレス空間がこの範囲に含まれます。The range includes the Azure owned public IP space.

既定のルールDefault rules

すべての NSG に既定のルール一式が含まれています。All NSGs contain a set of default rules. 既定のルールは削除できませんが、これには最も低い優先順位が割り当てられているため、ルールを作成することで上書きできます。The default rules cannot be deleted, but because they are assigned the lowest priority, they can be overridden by the rules that you create.

既定のルールでは、トラフィックが次のように許可または拒否されます。The default rules allow and disallow traffic as follows:

  • 仮想ネットワーク: 仮想ネットワーク内で発信および着信するトラフィックについては、受信方向と送信方向の両方で許可されます。Virtual network: Traffic originating and ending in a virtual network is allowed both in inbound and outbound directions.
  • インターネット: 送信トラフィックは許可されますが、受信トラフィックはブロックされます。Internet: Outbound traffic is allowed, but inbound traffic is blocked.
  • ロード バランサー: Azure のロード バランサーによる VM とロール インスタンスの正常性プローブが許可されます。Load balancer: Allow Azure’s load balancer to probe the health of your VMs and role instances. 負荷分散セットを使用していない場合は、このルールを上書きできます。If you are not using a load balanced set you can override this rule.

受信の既定のルールInbound default rules

NameName 優先順位Priority 発信元 IPSource IP 発信元ポートSource Port 宛先 IPDestination IP 宛先ポートDestination Port プロトコルProtocol AccessAccess
AllowVNetInBoundAllowVNetInBound 6500065000 VirtualNetworkVirtualNetwork * VirtualNetworkVirtualNetwork * * ALLOWAllow
AllowAzureLoadBalancerInBoundAllowAzureLoadBalancerInBound 6500165001 AzureLoadBalancerAzureLoadBalancer * * * * ALLOWAllow
DenyAllInBoundDenyAllInBound 6550065500 * * * * * DENYDeny

送信の既定のルールOutbound default rules

NameName 優先順位Priority 発信元 IPSource IP 発信元ポートSource Port 宛先 IPDestination IP 宛先ポートDestination Port プロトコルProtocol AccessAccess
AllowVnetOutBoundAllowVnetOutBound 6500065000 VirtualNetworkVirtualNetwork * VirtualNetworkVirtualNetwork * * ALLOWAllow
AllowInternetOutBoundAllowInternetOutBound 6500165001 * * インターネットInternet * * ALLOWAllow
DenyAllOutBoundDenyAllOutBound 6550065500 * * * * * DENYDeny

NSG の関連付けAssociating NSGs

VM、NIC、サブネットには、使用しているデプロイ モデルに応じて、次のように NSG を関連付けることができます。You can associate an NSG to VMs, NICs, and subnets, depending on the deployment model you are using, as follows:

  • VM (クラシックのみ): セキュリティ規則は、VM との間で送受信されるすべてのトラフィックに適用されます。VM (classic only): Security rules are applied to all traffic to/from the VM.
  • NIC (Resource Manager のみ): セキュリティ規則は、NSG が関連付けられている NIC との間で送受信されるすべてのトラフィックに適用されます。NIC (Resource Manager only): Security rules are applied to all traffic to/from the NIC the NSG is associated to. 複数の NIC が使用されている VM の場合、各 NIC にそれぞれ異なる (または同じ) NSG を適用することができます。In a multi-NIC VM, you can apply different (or the same) NSG to each NIC individually.
  • サブネット (Resource Manager とクラシック): セキュリティ規則は、VNet に接続されたすべてのリソースとの間で送受信されるトラフィックに適用されます。Subnet (Resource Manager and classic): Security rules are applied to any traffic to/from any resources connected to the VNet.

VM (デプロイメント モデルによっては NIC) に関連付ける NSG と、NIC または VM の接続先となるサブネットに関連付ける NSG とが異なっていてもかまいません。You can associate different NSGs to a VM (or NIC, depending on the deployment model) and the subnet that a NIC or VM is connected to. セキュリティ規則は、各 NSG 内の優先度に基づき、次の順番でトラフィックに適用されます。Security rules are applied to the traffic, by priority, in each NSG, in the following order:

  • 受信トラフィックInbound traffic

    1. サブネットに適用される NSG: サブネット NSG に、トラフィックを拒否する照合ルールがある場合、パケットは破棄されます。NSG applied to subnet: If a subnet NSG has a matching rule to deny traffic, the packet is dropped.

    2. NIC (Resource Manager) または VM (クラシック) に適用される NSG: トラフィックを拒否する照合ルールが VM\NIC NSG にある場合、サブネット NSG にトラフィックを許可する照合ルールがあったとしても、パケットは VM\NIC で破棄されます。NSG applied to NIC (Resource Manager) or VM (classic): If VM\NIC NSG has a matching rule that denies traffic, packets are dropped at the VM\NIC, even if a subnet NSG has a matching rule that allows traffic.

  • 送信トラフィックOutbound traffic

    1. NIC (Resource Manager) または VM (クラシック) に適用される NSG: トラフィックを拒否する照合ルールが VM\NIC NSG にある場合、パケットは破棄されます。NSG applied to NIC (Resource Manager) or VM (classic): If a VM\NIC NSG has a matching rule that denies traffic, packets are dropped.

    2. サブネットに適用される NSG: トラフィックを拒否する照合ルールがサブネット NSG にある場合、VM\NIC NSG にトラフィックを許可する照合ルールがあったとしても、パケットは破棄されます。NSG applied to subnet: If a subnet NSG has a matching rule that denies traffic, packets are dropped, even if a VM\NIC NSG has a matching rule that allows traffic.

注意

1 つの NSG は 1 つのサブネット、VM、または NIC に関連付けられますが、同じ NSG は必要なだけの数のリソースに関連付けることができます。Although you can only associate a single NSG to a subnet, VM, or NIC; you can associate the same NSG to as many resources as you want.

実装Implementation

Resource Manager デプロイメント モデルまたはクラシック デプロイメント モデルで NSG を実装するには、以下のツールを使用します。You can implement NSGs in the Resource Manager or classic deployment models using the following tools:

デプロイ ツールDeployment tool クラシックClassic リソース マネージャーResource Manager
Azure PortalAzure portal はいYes はいYes
PowerShellPowerShell はいYes はいYes
Azure CLI V1Azure CLI V1 はいYes はいYes
Azure CLI V2Azure CLI V2 いいえNo はいYes
Azure Resource Manager テンプレートAzure Resource Manager template いいえNo はいYes

計画Planning

NSG を実装する前に、次の質問への回答を用意する必要があります。Before implementing NSGs, you need to answer the following questions:

  1. どのようなリソースとの間で送受信トラフィックをフィルタリングするか。What types of resources do you want to filter traffic to or from? 接続できるリソースとしては、NIC (Resource Manager)、VM (クラシック)、Cloud Services、Application Service Environments、VM Scale Sets などがあります。You can connect resources such as NICs (Resource Manager), VMs (classic), Cloud Services, Application Service Environments, and VM Scale Sets.
  2. 送受信トラフィックのフィルタリング対象となるリソースは、既存の VNet 内のサブネットに接続されているか。Are the resources you want to filter traffic to/from connected to subnets in existing VNets?

Azure におけるネットワーク セキュリティの計画について詳しくは、クラウド サービスとネットワーク セキュリティに関するページを参照してください。For more information on planning for network security in Azure, read the Cloud services and network security article.

設計上の考慮事項Design considerations

計画」セクションの質問に対する回答を用意できたら、NSG を定義する前に、以下の各セクションを確認します。Once you know the answers to the questions in the Planning section, review the following sections before defining your NSGs:

制限Limits

1 つのサブスクリプション内で使用できる NSG の数と、NSG ごとのルールの数には制限があります。There are limits to the number of NSGs you can have in a subscription and number of rules per NSG. 制限の詳細については、Azure の制限に関する記事をご覧ください。To learn more about the limits, read the Azure limits article.

VNet とサブネットの設計VNet and subnet design

NSG はサブネットに適用できるため、リソースをサブネットごとにグループ化し、NSG をサブネットに適用することで、NSG の数を最小限に抑えることができます。Since NSGs can be applied to subnets, you can minimize the number of NSGs by grouping your resources by subnet, and applying NSGs to subnets. NSG をサブネットに適用することにしたものの、既存の VNet とサブネットが NSG のことを考えて定義されていないことがあります。If you decide to apply NSGs to subnets, you may find that existing VNets and subnets you have were not defined with NSGs in mind. 場合によっては、用意した NSG 設計をサポートするように VNet とサブネットを新たに定義し、そのうえで、新しいサブネットに新しいリソースをデプロイすることも必要です。You may need to define new VNets and subnets to support your NSG design and deploy your new resources to your new subnets. その後、新しいサブネットに既存のリソースを移動する移行戦略を定義できます。You could then define a migration strategy to move existing resources to the new subnets.

特殊なルールSpecial rules

以下のルールで許可されているトラフィックをブロックした場合、インフラストラクチャが Azure の重要なサービスと通信できなくなります。If you block traffic allowed by the following rules, your infrastructure can't communicate with essential Azure services:

  • ホスト ノードの仮想 IP: DHCP、DNS、正常性の監視などの基本的なインフラストラクチャ サービスは、仮想化されたホストの IP アドレス 168.63.129.16 を通じて提供されます。Virtual IP of the host node: Basic infrastructure services such as DHCP, DNS, and health monitoring are provided through the virtualized host IP address 168.63.129.16. このパブリック IP アドレスは Microsoft に属し、この目的のためにすべてのリージョンで使用される唯一の仮想化 IP アドレスです。This public IP address belongs to Microsoft and is the only virtualized IP address used in all regions for this purpose. この IP アドレスは、VM をホストしているサーバー コンピューター (ホスト ノード) の物理 IP アドレスにマッピングされます。This IP address maps to the physical IP address of the server machine (host node) hosting the VM. ホスト ノードは、DHCP リレー、DNS の再帰的リゾルバー、および Load Balancer の正常性プローブとマシンの正常性プローブのプローブ元として機能します。The host node acts as the DHCP relay, the DNS recursive resolver, and the probe source for the load balancer health probe and the machine health probe. この IP アドレスへの通信は攻撃ではありません。Communication to this IP address is not an attack.
  • ライセンス (キー管理サービス): VM で実行される Windows イメージには、ライセンスを適用する必要があります。Licensing (Key Management Service): Windows images running in VMs must be licensed. ライセンスを適用するために、そのような問い合わせを処理するキー管理サービスのホスト サーバーには要求が送信されます。To ensure licensing, a request is sent to the Key Management Service host servers that handle such queries. この要求は、ポート 1688 を通じて送信されます。The request is made outbound through port 1688.

ICMP トラフィックICMP traffic

現在の NSG のルールは、プロトコル TCP または UDP のみを許可します。The current NSG rules only allow for protocols TCP or UDP. ICMP専用のタグはありません。There is not a specific tag for ICMP. ただし VNet 内では、その中のすべてのポートおよびプロトコルとの間で送受信されるトラフィックが、既定のルール AllowVNetInBound によって許可されており、それによって ICMP トラフィックも許可されます。However, ICMP traffic is allowed within a VNet by the AllowVNetInBound default rule, that allows traffic to and from any port and protocol within the VNet.

サブネットSubnets

  • ワークロードに必要な階層の数を考慮してください。Consider the number of tiers your workload requires. サブネットを使用して各層を分離し、NSG をそのサブネットに適用できます。Each tier can be isolated by using a subnet, with an NSG applied to the subnet.
  • VPN ゲートウェイまたは ExpressRoute 回線用のサブネットを実装する必要がある場合は、そのサブネットに NSG を適用しないでください。If you need to implement a subnet for a VPN gateway, or ExpressRoute circuit, do not apply an NSG to that subnet. 適用すると、VNet 間接続またはクロスプレミス接続が機能しない場合があります。If you do so, cross-VNet or cross-premises connectivity may fail.
  • ネットワーク仮想アプライアンス (NVA) を実装する必要がある場合は、専用のサブネットに NVA を接続し、NVA との間でトラフィックを送受信するためのユーザー定義ルート (UDR) を作成してください。If you need to implement a network virtual appliance (NVA), connect the NVA to its own subnet and create user-defined routes (UDR) to and from the NVA. サブネット レベルの NSG を実装して、このサブネットに出入りするトラフィックをフィルター処理できます。You can implement a subnet level NSG to filter traffic in and out of this subnet. UDR について詳しくは、ユーザー定義のルートに関する記事をご覧ください。To learn more about UDRs, read the User-defined routes article.

ロード バランサーLoad balancers

  • 各ワークロードで使用されているロード バランサーごとに負荷分散とネットワーク アドレス変換 (NAT) に関するルールを検討してください。Consider the load balancing and network address translation (NAT) rules for each load balancer used by each of your workloads. NAT 規則は、NIC (Resource Manager) または VM/Cloud Services のロール インスタンス (クラシック) が属しているバックエンド プールにバインドされます。NAT rules are bound to a back-end pool that contains NICs (Resource Manager) or VMs/Cloud Services role instances (classic). ロード バランサーに実装されたルールでマップされたトラフィックのみを許可する NSG をバックエンド プールごとに作成することを検討してください。Consider creating an NSG for each back-end pool, allowing only traffic mapped through the rules implemented in the load balancers. バックエンド プールごとに NSG を作成することにより、ロード バランサーを経由せずにバックエンド プールに直接送信されるトラフィックも確実にフィルター処理されます。Creating an NSG for each back-end pool guarantees that traffic coming to the back-end pool directly (rather than through the load balancer), is also filtered.
  • クラシック デプロイでは、ロード バランサーのポートを VM またはロール インスタンスのポートにマップするエンドポイントを作成します。In classic deployments, you create endpoints that map ports on a load balancer to ports on your VMs or role instances. Resource Manager では、パブリックに公開されたロード バランサーを自分で個別に作成することもできます。You can also create your own individual public-facing load balancer through Resource Manager. 受信トラフィックの宛先ポートは、ロード バランサーによって公開されているポートではなく、VM またはロール インスタンスの実際のポートです。The destination port for incoming traffic is the actual port in the VM or role instance, not the port exposed by a load balancer. VM への接続用の発信元ポートとアドレスは、ロード バランサーによって公開されているポートとアドレスではなく、インターネット上にあるリモート コンピューターの発信元ポートとアドレスです。The source port and address for the connection to the VM is a port and address on the remote computer in the Internet, not the port and address exposed by the load balancer.
  • 内部ロード バランサー (ILB) 経由のトラフィックをフィルター処理する NSG を作成する場合、適用される発信元ポートとアドレス範囲は、ロード バランサーのものではなく、呼び出しを開始するコンピューターのものになります。When you create NSGs to filter traffic coming through an internal load balancer (ILB), the source port and address range applied are from the originating computer, not the load balancer. 宛先ポートとアドレス範囲は、ロード バランサーのものではなく、宛先コンピューターのものになります。The destination port and address range are those of the destination computer, not the load balancer.

他のOther

  • エンドポイントベースのアクセス制御リスト (ACL) と NSG は、同じ VM インスタンスではサポートされません。Endpoint-based access control lists (ACL) and NSGs are not supported on the same VM instance. エンドポイントの ACL が既に導入されている場合に NSG を使用するには、初めにエンドポイントの ACL を削除します。If you want to use an NSG and have an endpoint ACL already in place, first remove the endpoint ACL. エンドポイントの ACL を削除する方法については、エンドポイントの ACL の管理についての記事を参照してください。For information about how to remove an endpoint ACL, see the Manage endpoint ACLs article.
  • Resource Manager では、複数の NIC を備える VM で、1 つの NIC に 1 つの NSG を関連付けて、NIC ごとの管理 (リモート アクセス) を実現することができます。In Resource Manager, you can use an NSG associated to a NIC for VMs with multiple NICs to enable management (remote access) on a per NIC basis. それぞれの NIC に固有の NSG を関連付けることで、複数の NIC に対してトラフィック タイプを分散することができます。Associating unique NSGs to each NIC enables separation of traffic types across NICs.
  • ロード バランサーを使用する場合と同様に、他の VNet からのトラフィックをフィルター処理する際は、VNet に接続しているゲートウェイではなく、リモート コンピューターの発信元アドレス範囲を使用する必要があります。Similar to the use of load balancers, when filtering traffic from other VNets, you must use the source address range of the remote computer, not the gateway connecting the VNets.
  • VNet に多数の Azure サービスを接続することはできません。Many Azure services cannot be connected to VNets. VNet に接続されていない Azure リソースへのトラフィックを NSG でフィルター処理することはできません。If an Azure resource is not connected to a VNet, you cannot use an NSG to filter traffic to the resource. ご使用のサービスを VNet に接続できるかどうかは、そのサービスのドキュメントをご覧のうえで判断してください。Read the documentation for the services you use to determine whether the service can be connected to a VNet.

サンプル デプロイメントSample deployment

この記事の情報の応用例として、次の図に示す 2 層アプリケーションの一般的なシナリオを考えてみましょう。To illustrate the application of the information in this article, consider a common scenario of a two tier application shown in the following picture:

NSG

図に示すように、WEB1 VM と WEB2 VM が FrontEnd サブネットに接続され、DB1 VM と DB2 VM が BackEnd サブネットに接続されています。As shown in the diagram, the Web1 and Web2 VMs are connected to the FrontEnd subnet, and the DB1 and DB2 VMs are connected to the BackEnd subnet. どちらのサブネットも TestVNet VNet の一部です。Both subnets are part of the TestVNet VNet. それぞれのアプリケーション コンポーネントは、VNet に接続された Azure VM 内で動作します。The application components each run within an Azure VM connected to a VNet. このシナリオの要件は次のとおりです。The scenario has the following requirements:

  1. WEB サーバーと DB サーバーの間のトラフィックを分離。Separation of traffic between the WEB and DB servers.
  2. 負荷分散ルールでロード バランサーからのトラフィックをすべての Web サーバーのポート 80 に転送。Load balancing rules forward traffic from the load balancer to all web servers on port 80.
  3. ロード バランサーのポート 50001 に送信されるトラフィックを、ロード バランサーの NAT 規則で WEB1 VM のポート 3389 に転送。Load balancer NAT rules forward traffic coming into the load balancer on port 50001 to port 3389 on the WEB1 VM.
  4. 要件 2 と 3 を除き、フロントエンドまたはバックエンドの VM に対するインターネットからのアクセスを拒否。No access to the front-end or back-end VMs from the Internet, except requirements 2 and 3.
  5. WEB サーバーと DB サーバーからの送信インターネット アクセスを拒否。No outbound Internet access from the WEB or DB servers.
  6. FrontEnd サブネットからは、すべての Web サーバーのポート 3389 に対するアクセスを許可。Access from the FrontEnd subnet is allowed to port 3389 of any web server.
  7. FrontEnd サブネットからは、すべての DB サーバーのポート 3389 に対するアクセスを許可。Access from the FrontEnd subnet is allowed to port 3389 of any DB server.
  8. FrontEnd サブネットからは、すべての DB サーバーのポート 1433 に対するアクセスを許可。Access from the FrontEnd subnet is allowed to port 1433 of all DB servers.
  9. DB サーバーで NIC 別に管理トラフィック (ポート 3389) とデータベース トラフィック (1433) を分離。Separation of management traffic (port 3389) and database traffic (1433) on different NICs in DB servers.

要件 1 ~ 6 (要件 3 と 4 を除く) は、いずれもサブネット空間に限定されます。Requirements 1-6 (except requirements 3 and 4) are all confined to subnet spaces. 以下の NSG は前述の要件を満たすと共に、必要な NSG の数を最小限に抑えています。The following NSGs meet the previous requirements, while minimizing the number of NSGs required:

FrontEndFrontEnd

受信の規則Inbound rules

ルールRule Access (アクセス)Access 優先順位Priority 発信元アドレス範囲Source address range 発信元ポートSource port 宛先アドレス範囲Destination address range 宛先ポートDestination port プロトコルProtocol
Allow-Inbound-HTTP-InternetAllow-Inbound-HTTP-Internet ALLOWAllow 100100 インターネットInternet * * 8080 TCPTCP
Allow-Inbound-RDP-InternetAllow-Inbound-RDP-Internet ALLOWAllow 200200 インターネットInternet * * 33893389 TCPTCP
Deny-Inbound-AllDeny-Inbound-All DENYDeny 300300 インターネットInternet * * * TCPTCP

送信の規則Outbound rules

ルールRule Access (アクセス)Access 優先順位Priority 発信元アドレス範囲Source address range 発信元ポートSource port 宛先アドレス範囲Destination address range 宛先ポートDestination port プロトコルProtocol
Deny-Internet-AllDeny-Internet-All DENYDeny 100100 * * インターネットInternet * *

BackEndBackEnd

受信の規則Inbound rules

ルールRule Access (アクセス)Access 優先順位Priority 発信元アドレス範囲Source address range 発信元ポートSource port 宛先アドレス範囲Destination address range 宛先ポートDestination port プロトコルProtocol
Deny-Internet-AllDeny-Internet-All DENYDeny 100100 インターネットInternet * * * *

送信の規則Outbound rules

ルールRule Access (アクセス)Access 優先順位Priority 発信元アドレス範囲Source address range 発信元ポートSource port 宛先アドレス範囲Destination address range 宛先ポートDestination port プロトコルProtocol
Deny-Internet-AllDeny-Internet-All DENYDeny 100100 * * インターネットInternet * *

以下の NSG を作成し、各 VM の NIC に関連付けます。The following NSGs are created and associated to NICs in the following VMs:

WEB1WEB1

受信の規則Inbound rules

ルールRule Access (アクセス)Access 優先順位Priority 発信元アドレス範囲Source address range 発信元ポートSource port 宛先アドレス範囲Destination address range 宛先ポートDestination port プロトコルProtocol
Allow-Inbound-RDP-InternetAllow-Inbound-RDP-Internet ALLOWAllow 100100 インターネットInternet * * 33893389 TCPTCP
Allow-Inbound-HTTP-InternetAllow-Inbound-HTTP-Internet ALLOWAllow 200200 インターネットInternet * * 8080 TCPTCP

注意

前述のルールの発信元アドレス範囲はインターネットであって、ロード バランサーの仮想 IP アドレスではありません。The source address range for the previous rules is Internet, not the virtual IP address of for the load balancer. 発信元ポートは 500001 ではなく * です。The source port is , not 500001. ロード バランサーの NAT 規則は、NSG セキュリティ規則とは異なります。NAT rules for load balancers are not the same as NSG security rules. NSG セキュリティ規則は、常にトラフィックの最初の発信元と最終的な宛先に関連付けられ、両者の間にあるロード バランサーは関係しませんNSG security rules are always related to the original source and final destination of traffic, **not* the load balancer between the two.

WEB2WEB2

受信の規則Inbound rules

ルールRule Access (アクセス)Access 優先順位Priority 発信元アドレス範囲Source address range 発信元ポートSource port 宛先アドレス範囲Destination address range 宛先ポートDestination port プロトコルProtocol
Deny-Inbound-RDP-InternetDeny-Inbound-RDP-Internet DENYDeny 100100 インターネットInternet * * 33893389 TCPTCP
Allow-Inbound-HTTP-InternetAllow-Inbound-HTTP-Internet ALLOWAllow 200200 インターネットInternet * * 8080 TCPTCP

DB サーバー (管理 NIC)DB servers (Management NIC)

受信の規則Inbound rules

ルールRule Access (アクセス)Access 優先順位Priority 発信元アドレス範囲Source address range 発信元ポートSource port 宛先アドレス範囲Destination address range 宛先ポートDestination port プロトコルProtocol
Allow-Inbound-RDP-Front-endAllow-Inbound-RDP-Front-end ALLOWAllow 100100 192.168.1.0/24192.168.1.0/24 * * 33893389 TCPTCP

DB サーバー (データベース トラフィック NIC)DB servers (Database traffic NIC)

受信の規則Inbound rules

ルールRule Access (アクセス)Access 優先順位Priority 発信元アドレス範囲Source address range 発信元ポートSource port 宛先アドレス範囲Destination address range 宛先ポートDestination port プロトコルProtocol
Allow-Inbound-SQL-Front-endAllow-Inbound-SQL-Front-end ALLOWAllow 100100 192.168.1.0/24192.168.1.0/24 * * 14331433 TCPTCP

NSG のいくつかは個々の NIC に関連付けられるので、これらのルールは、Resource Manager を通じてデプロイされたリソース用となります。Since some of the NSGs are associated to individual NICs, the rules are for resources deployed through Resource Manager. 各ルールはその関連付けに応じて組み合わされ、サブネットと NIC に適用されます。Rules are combined for subnet and NIC, depending on how they are associated.

次のステップNext steps