Filtrowanie ruchu sieciowego przy użyciu sieciowych grup zabezpieczeńFilter network traffic with network security groups

Sieciowa grupa zabezpieczeń (NSG, network security group) zawiera listę reguł zabezpieczeń, które blokują lub zezwalają na ruch sieciowy do zasobów połączonych z usługami 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). Sieciowe grupy zabezpieczeń można skojarzyć z podsieciami, poszczególnymi maszynami wirtualnymi (model klasyczny) lub poszczególnymi interfejsami sieciowymi (NIC) dołączonymi do maszyn wirtualnych (model usługi Resource Manager).NSGs can be associated to subnets, individual VMs (classic), or individual network interfaces (NIC) attached to VMs (Resource Manager). Jeśli sieciowa grupa zabezpieczeń jest skojarzona z podsiecią, te reguły są stosowane do wszystkich zasobów połączonych z tą podsiecią.When an NSG is associated to a subnet, the rules apply to all resources connected to the subnet. Ruch można ograniczyć jeszcze bardziej, kojarząc sieciową grupę zabezpieczeń również z maszyną wirtualną lub kartą sieciową.Traffic can further be restricted by also associating an NSG to a VM or NIC.

Uwaga

Platforma Azure oferuje dwa różne modele wdrażania związane z tworzeniem zasobów i pracą z nimi: model wdrażania przy użyciu usługi Azure Resource Manager i model klasyczny.Azure has two different deployment models for creating and working with resources: Resource Manager and classic. W tym artykule przedstawiono oba modele, ale firma Microsoft zaleca przeprowadzanie większości nowych wdrożeń z zastosowaniem modelu wdrażania przy użyciu usługi Azure Resource Manager.This article covers using both models, but Microsoft recommends that most new deployments use the Resource Manager model.

Zasób sieciowej grupy zabezpieczeńNSG resource

Sieciowe grupy zabezpieczeń obejmują następujące właściwości:NSGs contain the following properties:

WłaściwośćProperty OpisDescription OgraniczeniaConstraints Zagadnienia do rozważeniaConsiderations
NazwaName Nazwa sieciowej grupy zabezpieczeńName for the NSG Musi być unikatowa w obrębie regionu.Must be unique within the region.
Może zawierać litery, cyfry, podkreślenia, kropki i łączniki.Can contain letters, numbers, underscores, periods, and hyphens.
Musi zaczynać się literą lub cyfrą.Must start with a letter or number.
Musi kończyć się literą, cyfrą lub podkreśleniem.Must end with a letter, number, or underscore.
Nie może przekraczać 80 znaków.Cannot exceed 80 characters.
Ponieważ może być konieczne utworzenie kilku sieciowych grup zabezpieczeń, upewnij się, że dysponujesz konwencją nazewnictwa, która pozwala łatwo identyfikować ich funkcję.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.
RegionRegion Region świadczenia usługi Azure, w którym jest tworzona sieciowa grupa zabezpieczeń.Azure region where the NSG is created. Sieciowe grupy zabezpieczeń można kojarzyć tylko z zasobami znajdującymi się w tym samym regionie co sieciowa grupa zabezpieczeń.NSGs can only be associated to resources within the same region as the NSG. Aby się dowiedzieć, ile sieciowych grup zabezpieczeń może się znajdować w jednym regionie, przeczytaj artykuł dotyczący limitów platformy Azure.To learn about how many NSGs you can have per region, read the Azure limits article.
Grupa zasobówResource group Grupa zasobów, w której istnieje sieciowa grupa zabezpieczeń.The resource group the NSG exists in. Chociaż sieciowa grupa zabezpieczeń istnieje w grupie zasobów, może być skojarzona z zasobami w dowolnej grupie zasobów, jeśli tylko zasób jest częścią tego samego regionu świadczenia usługi Azure co sieciowa grupa zabezpieczeń.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. Grupy zasobów służą do zarządzania wieloma zasobami równocześnie w ramach jednostki wdrożenia.Resource groups are used to manage multiple resources together, as a deployment unit.
Można rozważyć zgrupowanie sieciowej grupy zabezpieczeń z zasobami, z którymi jest ona skojarzona.You may consider grouping the NSG with resources it is associated to.
RegułyRules Reguły ruchu przychodzącego i wychodzącego określające, jaki ruch jest dozwolony lub zablokowany.Inbound or outbound rules that define what traffic is allowed or denied. Zobacz sekcję Reguły sieciowej grupy zabezpieczeń w tym artykule.See the NSG rules section of this article.

Uwaga

Listy ACL oparte na punktach końcowych i sieciowe grupy zabezpieczeń nie są obsługiwane w tym samym wystąpieniu maszyny wirtualnej.Endpoint-based ACLs and network security groups are not supported on the same VM instance. Jeśli chcesz użyć sieciowej grupy zabezpieczeń, a masz już listę ACL punktów końcowych, najpierw usuń listę ACL punktów końcowych.If you want to use an NSG and have an endpoint ACL already in place, first remove the endpoint ACL. Aby się dowiedzieć, jak usunąć listę ACL, przeczytaj artykuł Managing Access Control Lists (ACLs) for Endpoints by using PowerShell (Zarządzanie listami kontroli dostępu [ACL] dla punktów końcowych przy użyciu programu PowerShell).To learn how to remove an ACL, read the Managing Access Control Lists (ACLs) for Endpoints by using PowerShell article.

Reguły sieciowej grupy zabezpieczeńNSG rules

Reguły sieciowych grup zabezpieczeń obejmują następujące właściwości:NSG rules contain the following properties:

WłaściwośćProperty OpisDescription OgraniczeniaConstraints Zagadnienia do rozważeniaConsiderations
NazwaName Nazwa reguły.Name for the rule. Musi być unikatowa w obrębie regionu.Must be unique within the region.
Może zawierać litery, cyfry, podkreślenia, kropki i łączniki.Can contain letters, numbers, underscores, periods, and hyphens.
Musi zaczynać się literą lub cyfrą.Must start with a letter or number.
Musi kończyć się literą, cyfrą lub podkreśleniem.Must end with a letter, number, or underscore.
Nie może przekraczać 80 znaków.Cannot exceed 80 characters.
Sieciowa grupa zabezpieczeń może zawierać kilka reguł, więc pamiętaj, aby postępować zgodnie z konwencją nazewnictwa, która umożliwia zidentyfikowanie funkcji reguły.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.
ProtokółProtocol Protokół odpowiadający regule.Protocol to match for the rule. TCP, UDP lub *TCP, UDP, or * Wstawienie znaku * oznacza protokół ICMP (tylko ruch wschód-zachód), a także protokoły UDP i TCP. W ten sposób można zmniejszyć liczbę potrzebnych reguł.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.
Z drugiej strony użycie znaku * może okazać się rozwiązaniem zbyt ogólnym, dlatego zaleca się używanie znaku * tylko w razie konieczności.At the same time, using * might be too broad an approach, so it's recommended that you use * only when necessary.
Zakres portów źródłowychSource port range Zakres portów źródłowych odpowiadający regule.Source port range to match for the rule. Numer pojedynczego portu od 1 do 65535, zakres portów (np. 1–65535) lub * (dla wszystkich portów).Single port number from 1 to 65535, port range (example: 1-65535), or * (for all ports). Porty źródłowe mogą być efemeryczne.Source ports could be ephemeral. Jeśli program kliencki nie korzysta z określonego portu, należy w większości przypadków użyć znaku *.Unless your client program is using a specific port, use * in most cases.
Używaj zakresów portów możliwie często, aby uniknąć konieczności korzystania z wielu reguł.Try to use port ranges as much as possible to avoid the need for multiple rules.
Wielu portów lub zakresów portów nie można oddzielać przecinkiem.Multiple ports or port ranges cannot be grouped by a comma.
Zakres portów docelowychDestination port range Zakres portów docelowych odpowiadający regule.Destination port range to match for the rule. Numer pojedynczego portu od 1 do 65535, zakres portów (np. 1–65535) lub * (dla wszystkich portów).Single port number from 1 to 65535, port range (example: 1-65535), or * (for all ports). Używaj zakresów portów możliwie często, aby uniknąć konieczności korzystania z wielu reguł.Try to use port ranges as much as possible to avoid the need for multiple rules.
Wielu portów lub zakresów portów nie można oddzielać przecinkiem.Multiple ports or port ranges cannot be grouped by a comma.
Prefiks adresu źródłowegoSource address prefix Prefiks adresu źródłowego lub znacznik odpowiadający regule.Source address prefix or tag to match for the rule. Pojedynczy adres IP (np. 10.10.10.10), podsieć IP (np. 192.168.1.0/24), znacznik domyślny lub * (dla wszystkich adresów).Single IP address (example: 10.10.10.10), IP subnet (example: 192.168.1.0/24), default tag, or * (for all addresses). Należy rozważyć użycie zakresów, znaczników domyślnych i znaków * w celu zmniejszenia liczby reguł.Consider using ranges, default tags, and * to reduce the number of rules.
Prefiks adresu docelowegoDestination address prefix Prefiks adresu docelowego lub znacznik odpowiadający regule.Destination address prefix or tag to match for the rule. Pojedynczy adres IP (np. 10.10.10.10), podsieć IP (np. 192.168.1.0/24), znacznik domyślny lub * (dla wszystkich adresów).Single IP address (example: 10.10.10.10), IP subnet (example: 192.168.1.0/24), default tag, or * (for all addresses). Należy rozważyć użycie zakresów, znaczników domyślnych i znaków * w celu zmniejszenia liczby reguł.Consider using ranges, default tags, and * to reduce the number of rules.
KierunekDirection Kierunek ruchu odpowiadający regule.Direction of traffic to match for the rule. Ruch przychodzący lub wychodzący.Inbound or outbound. Reguły ruchu przychodzącego i wychodzącego są przetwarzane oddzielnie w zależności od kierunku.Inbound and outbound rules are processed separately, based on direction.
PriorytetPriority Reguły są sprawdzane według ważności.Rules are checked in the order of priority. Gdy reguła ma zastosowanie, żadne inne reguły nie są sprawdzane pod kątem dopasowania.Once a rule applies, no more rules are tested for matching. Liczba z zakresu od 100 do 4096.Number between 100 and 4096. Należy rozważyć utworzenie reguł przez przeskoczenie priorytetów o 100 dla każdej reguły, aby zostawić miejsce na nowe reguły, które mogą zostać utworzone w przyszłości.Consider creating rules jumping priorities by 100 for each rule to leave space for new rules you might create in the future.
DostępAccess Typ dostępu do zastosowania, jeśli reguła jest dopasowana.Type of access to apply if the rule matches. Zezwolenie lub zablokowanie.Allow or deny. Pamiętaj, że jeśli dla pakietu nie zostanie odnaleziona reguła zezwalająca, zostanie on porzucony.Keep in mind that if an allow rule is not found for a packet, the packet is dropped.

Sieciowe grupy zabezpieczeń zawierają dwa zestawy reguł: zestaw reguł przychodzących i wychodzących.NSGs contain two sets of rules: Inbound and outbound. Priorytety reguł muszą być unikatowe w poszczególnych zestawach.The priority for a rule must be unique within each set.

Przetwarzanie reguł sieciowej grupy zabezpieczeń

Na wcześniejszym rysunku przedstawiono, jak są przetwarzane reguły sieciowej grupy zabezpieczeń.The previous picture shows how NSG rules are processed.

Znaczniki domyślneDefault Tags

Znaczniki domyślne są dostarczanymi przez system identyfikatorami określającymi kategorię adresów IP.Default tags are system-provided identifiers to address a category of IP addresses. Można użyć znaczników domyślnych we właściwościach prefiksu adresu źródłowego i prefiksu adresu docelowego dowolnej reguły.You can use default tags in the source address prefix and destination address prefix properties of any rule. Istnieją trzy znaczniki domyślne, których można użyć:There are three default tags you can use:

  • VirtualNetwork (model usługi Resource Manager) (VIRTUAL_NETWORK — model klasyczny): ten znacznik obejmuje przestrzeń adresową sieci wirtualnej (zakresy CIDR określone na platformie Azure), wszystkie połączone lokalne przestrzenie adresowe i połączone sieci wirtualne Azure (sieci lokalne).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 (model usługi Resource Manager) (AZURE_LOADBALANCER — model klasyczny): ten znacznik określa moduł równoważenia obciążenia infrastruktury platformy Azure.AzureLoadBalancer (Resource Manager) (AZURE_LOADBALANCER for classic): This tag denotes Azure’s infrastructure load balancer. Ten znacznik przekłada się na adres IP centrum danych Azure, z którego pochodzą sondy kondycji Azure.The tag translates to an Azure datacenter IP where Azure’s health probes originate.
  • Internet (model usługi Resource Manager) (INTERNET — model klasyczny): ten znacznik określa przestrzeń adresów IP, która znajduje się poza siecią wirtualną i do której można uzyskać dostęp w publicznym Internecie.Internet (Resource Manager) (INTERNET for classic): This tag denotes the IP address space that is outside the virtual network and reachable by public Internet. Ten zakres obejmuje publiczną przestrzeń adresów IP należącą do Azure.The range includes the Azure owned public IP space.

Reguły domyślneDefault rules

Wszystkie sieciowe grupy zabezpieczeń zawierają zestaw reguł domyślnych.All NSGs contain a set of default rules. Reguł domyślnych nie można usunąć, ale ponieważ mają przypisany najniższy priorytet, mogą być zastąpione przez tworzone zasady.The default rules cannot be deleted, but because they are assigned the lowest priority, they can be overridden by the rules that you create.

Reguły domyślne zezwalają na ruch i blokują go w następujący sposób:The default rules allow and disallow traffic as follows:

  • Sieć wirtualna: ruch pochodzący z sieci wirtualnej i kończący się w niej jest dozwolony zarówno w kierunku przychodzącym, jak i wychodzącym.Virtual network: Traffic originating and ending in a virtual network is allowed both in inbound and outbound directions.
  • Internet: ruch wychodzący jest dozwolony, ale ruch przychodzący jest blokowany.Internet: Outbound traffic is allowed, but inbound traffic is blocked.
  • Moduł równoważenia obciążenia: umożliwia modułowi równoważenia obciążenia Azure badanie kondycji maszyn wirtualnych i wystąpień ról.Load balancer: Allow Azure’s load balancer to probe the health of your VMs and role instances. Jeśli nie używa się zestawu z równoważeniem obciążenia, tę zasadę można zastąpić.If you are not using a load balanced set you can override this rule.

Reguły domyślne ruchu przychodzącegoInbound default rules

NazwaName PriorytetPriority Źródłowy adres IPSource IP Port źródłowySource Port Docelowy adres IPDestination IP Port docelowyDestination Port ProtokółProtocol DostępAccess
AllowVNetInBoundAllowVNetInBound 6500065000 VirtualNetworkVirtualNetwork * VirtualNetworkVirtualNetwork * * ZezwalajAllow
AllowAzureLoadBalancerInBoundAllowAzureLoadBalancerInBound 6500165001 AzureLoadBalancerAzureLoadBalancer * * * * ZezwalajAllow
DenyAllInBoundDenyAllInBound 6550065500 * * * * * ZablokujDeny

Domyślne reguły ruchu wychodzącegoOutbound default rules

NazwaName PriorytetPriority Źródłowy adres IPSource IP Port źródłowySource Port Docelowy adres IPDestination IP Port docelowyDestination Port ProtokółProtocol DostępAccess
AllowVnetOutBoundAllowVnetOutBound 6500065000 VirtualNetworkVirtualNetwork * VirtualNetworkVirtualNetwork * * ZezwalajAllow
AllowInternetOutBoundAllowInternetOutBound 6500165001 * * InternetInternet * * ZezwalajAllow
DenyAllOutBoundDenyAllOutBound 6550065500 * * * * * ZablokujDeny

Kojarzenie sieciowych grup zabezpieczeńAssociating NSGs

W zależności od używanego modelu wdrażania sieciową grupę zabezpieczeń można skojarzyć z maszynami wirtualnymi, kartami sieciowymi i podsieciami w następujący sposób:You can associate an NSG to VMs, NICs, and subnets, depending on the deployment model you are using, as follows:

  • Maszyna wirtualna (tylko model klasyczny): reguły zabezpieczeń są stosowane do całego ruchu do/z maszyny wirtualnej.VM (classic only): Security rules are applied to all traffic to/from the VM.
  • Karta sieciowa (tylko model Resource Manager): reguły zabezpieczeń są stosowane do całego ruchu do/z karty sieciowej, z którą jest skojarzona sieciowa grupa zabezpieczeń.NIC (Resource Manager only): Security rules are applied to all traffic to/from the NIC the NSG is associated to. Na maszynie wirtualnej wyposażonej w wiele kart sieciowych można stosować różne (lub takie same) sieciowe grupy zabezpieczeń do poszczególnych kart sieciowych.In a multi-NIC VM, you can apply different (or the same) NSG to each NIC individually.
  • Podsieć (model Resource Manager i klasyczny): reguły zabezpieczeń są stosowane do dowolnego ruchu do/z dowolnego zasobu połączonego z siecią wirtualną.Subnet (Resource Manager and classic): Security rules are applied to any traffic to/from any resources connected to the VNet.

Można skojarzyć różne sieciowe grupy zabezpieczeń z maszyną wirtualną (lub kartą sieciową, w zależności od modelu wdrażania) i podsiecią, z którą jest połączona karta sieciowa lub maszyna wirtualna.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. Reguły zabezpieczeń są stosowane do ruchu sieciowego według priorytetu w poszczególnych sieciowych grupach zabezpieczeń w następującej kolejności:Security rules are applied to the traffic, by priority, in each NSG, in the following order:

  • Ruch przychodzącyInbound traffic

    1. Sieciowa grupa zabezpieczeń zastosowana do podsieci: jeśli sieciowa grupa zabezpieczeń w podsieci zawiera regułę dopasowania w celu blokowania ruchu, pakiet jest porzucany.NSG applied to subnet: If a subnet NSG has a matching rule to deny traffic, the packet is dropped.

    2. Sieciowa grupa zabezpieczeń zastosowana do karty sieciowej (model usługi Resource Manager) lub maszyny wirtualnej (model klasyczny): jeśli sieciowa grupa zabezpieczeń maszyny wirtualnej lub karty sieciowej zawiera regułę dopasowania blokującą ruch, pakiety są porzucane w maszynie wirtualnej lub karcie sieciowej, nawet jeśli sieciowa grupa zabezpieczeń w podsieci ma regułę dopasowania zezwalającą na ruch.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.

  • Ruch wychodzącyOutbound traffic

    1. Sieciowa grupa zabezpieczeń zastosowana do karty sieciowej (model usługi Resource Manager) lub maszyny wirtualnej (model klasyczny): jeśli sieciowa grupa zabezpieczeń maszyny wirtualnej lub karty sieciowej zawiera regułę dopasowania blokującą ruch, pakiety są porzucane.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. Sieciowa grupa zabezpieczeń zastosowana do podsieci: jeśli sieciowa grupa zabezpieczeń podsieci zawiera regułę dopasowania blokującą ruch, pakiety są porzucane, nawet jeśli sieciowa grupa zabezpieczeń maszyny wirtualnej lub karty sieciowej ma regułę dopasowania zezwalającą na ruch.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.

Uwaga

Chociaż z podsiecią można skojarzyć tylko jedną sieciową grupę zabezpieczeń, maszynę wirtualną lub kartę sieciową, tę samą sieciową grupę zabezpieczeń można skojarzyć z dowolną liczbą zasobów.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.

WdrażanieImplementation

Sieciowe grupy zabezpieczeń można wdrożyć w modelach wdrażania: usługi Resource Manager oraz klasycznym przy użyciu następujących narzędzi:You can implement NSGs in the Resource Manager or classic deployment models using the following tools:

Narzędzie wdrażaniaDeployment tool Wdrożenie klasyczneClassic Resource ManagerResource Manager
Azure PortalAzure portal NieNo TakYes
PowerShellPowerShell TakYes TakYes
Interfejs wiersza polecenia platformy Azure V1Azure CLI V1 TakYes TakYes
Interfejs wiersza polecenia platformy Azure V2Azure CLI V2 NieNo TakYes
Szablon usługi Azure Resource ManagerAzure Resource Manager template NieNo TakYes

PlanowaniePlanning

Przed wdrożeniem sieciowych grup zabezpieczeń należy odpowiedzieć na następujące pytania:Before implementing NSGs, you need to answer the following questions:

  1. Do jakich lub z jakich typów zasobów chcesz filtrować ruch?What types of resources do you want to filter traffic to or from? Możesz podłączyć zasoby, takie jak karty sieciowe, (model usługi Resource Manager), maszyny wirtualne (model klasyczny), usługi Cloud Services, środowiska usług aplikacji i zestawy skalowania maszyn wirtualnych.You can connect resources such as NICs (Resource Manager), VMs (classic), Cloud Services, Application Service Environments, and VM Scale Sets.
  2. Czy zasoby, do i z których chcesz filtrować ruch, są połączone z podsieciami w istniejących sieciach wirtualnych?Are the resources you want to filter traffic to/from connected to subnets in existing VNets?

Aby uzyskać więcej informacji na temat planowania zabezpieczeń sieciowych na platformie Azure, przeczytaj artykuł o usługach w chmurze i zabezpieczeniach sieciowych.For more information on planning for network security in Azure, read the Cloud services and network security article.

Zagadnienia dotyczące projektowaniaDesign considerations

Jeśli znasz już odpowiedzi na pytania w sekcji Planowanie, przed zdefiniowaniem sieciowych grup zabezpieczeń sprawdź następujące sekcje:Once you know the answers to the questions in the Planning section, review the following sections before defining your NSGs:

LimityLimits

Istnieją ograniczenia liczby sieciowych grup zabezpieczeń zawartych w subskrypcji oraz liczby reguł dla poszczególnych sieciowych grup zabezpieczeń.There are limits to the number of NSGs you can have in a subscription and number of rules per NSG. Aby uzyskać więcej informacji o limitach, przeczytaj artykuł dotyczący limitów platformy Azure.To learn more about the limits, read the Azure limits article.

Projekt sieci wirtualnej i podsieciVNet and subnet design

Ze względu na to, że sieciowe grupy zabezpieczeń można zastosować do podsieci, można zminimalizować liczbę sieciowych grup zabezpieczeń przez grupowanie zasobów według podsieci i zastosowanie sieciowych grup zabezpieczeń do podsieci.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. Jeśli zdecydujesz się zastosować sieciowe grupy zabezpieczeń do podsieci, może się okazać, że istniejące sieci wirtualne i podsieci nie zostały zdefiniowane z uwzględnieniem sieciowych grup zabezpieczeń.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. Istnieje możliwość zdefiniowania nowych sieci wirtualnych i podsieci obsługujących projekt sieciowej grupy zabezpieczeń, a także wdrożenia nowych zasobów do nowych podsieci.You may need to define new VNets and subnets to support your NSG design and deploy your new resources to your new subnets. Następnie można zdefiniować strategię migracji, aby przenieść istniejące zasoby do nowych podsieci.You could then define a migration strategy to move existing resources to the new subnets.

Reguły specjalneSpecial rules

Jeśli zablokujesz ruch dozwolony przez następujące reguły, infrastruktura nie będzie mogła komunikować się z istotnymi usługami platformy Azure:If you block traffic allowed by the following rules, your infrastructure can't communicate with essential Azure services:

  • Wirtualny adres IP węzła hosta: podstawowe usługi infrastruktury, takie jak DHCP, DNS i monitorowanie kondycji, są realizowane za pośrednictwem zwirtualizowanego adresu IP hosta 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. Ten publiczny adres IP należy do firmy Microsoft i jest jedynym zwirtualizowanym adresem IP używanym do tego celu we wszystkich regionach.This public IP address belongs to Microsoft and is the only virtualized IP address used in all regions for this purpose. Ten adres IP mapuje do fizycznego adresu IP komputera serwera (węzła hosta) obsługującego maszynę wirtualną.This IP address maps to the physical IP address of the server machine (host node) hosting the VM. Węzeł hosta pełni rolę przekaźnika DHCP, cyklicznego programu rozpoznawania nazw DNS i źródła sondy kondycji modułu równoważenia obciążenia oraz sondy kondycji komputera.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. Komunikacja z tym adresem IP nie jest atakiem.Communication to this IP address is not an attack.
  • Licencjonowanie (usługa zarządzania kluczami): obrazy systemu Windows uruchomione na maszynach wirtualnych muszą być licencjonowane.Licensing (Key Management Service): Windows images running in VMs must be licensed. W celu zapewnienia licencjonowania do serwerów hosta usługi zarządzania kluczami zostaje wysłane żądanie licencjonowania, które takie żądania obsługują.To ensure licensing, a request is sent to the Key Management Service host servers that handle such queries. Żądanie jest wysyłane za pomocą portu 1688.The request is made outbound through port 1688.

Ruch protokołu ICMPICMP traffic

Bieżące reguły sieciowej grupy zabezpieczeń uwzględniają tylko protokoły TCP lub UDP.The current NSG rules only allow for protocols TCP or UDP. Nie ma określonego znacznika dla protokołu ICMP.There is not a specific tag for ICMP. Ruch ICMP jest jednak dozwolony w ramach sieci wirtualnej za pomocą reguły domyślnej AllowVNetInBound, która zezwala na ruch do i z dowolnego portu oraz protokołu w ramach sieci wirtualnej.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.

PodsieciSubnets

  • Weź pod uwagę liczbę warstw, której wymaga obciążenie.Consider the number of tiers your workload requires. Każdą warstwę można wyizolować przy użyciu podsieci, do której z kolei można zastosować sieciową grupę zabezpieczeń.Each tier can be isolated by using a subnet, with an NSG applied to the subnet.
  • Jeśli musisz wdrożyć podsieć dla bramy VPN lub obwodu ExpressRoute, nie stosuj sieciowej grupy zabezpieczeń do tej podsieci.If you need to implement a subnet for a VPN gateway, or ExpressRoute circuit, do not apply an NSG to that subnet. Jeśli tak zrobisz, może nie działać łączność pomiędzy różnymi sieciami wirtualnymi lub między różnymi lokalizacjami.If you do so, cross-VNet or cross-premises connectivity may fail.
  • Jeśli zachodzi potrzeba wdrożenia sieciowego urządzenia wirtualnego, połącz to urządzenie z jego własną podsiecią i utwórz trasy definiowane przez użytkownika do i z tego urządzenia.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. Możesz wdrożyć sieciową grupę zabezpieczeń poziomu podsieci, aby filtrować ruch do i z tej podsieci.You can implement a subnet level NSG to filter traffic in and out of this subnet. Aby dowiedzieć się więcej o trasach definiowanych przez użytkownika, przeczytaj artykuł Trasy definiowane przez użytkownika.To learn more about UDRs, read the User-defined routes article.

Moduły równoważenia obciążeniaLoad balancers

  • Należy rozważyć użycie reguł równoważenia obciążenia i translatora adresów sieciowych dla każdego modułu równoważenia obciążenia używanego przez poszczególne obciążenia.Consider the load balancing and network address translation (NAT) rules for each load balancer used by each of your workloads. Reguły translatora adresów sieciowych są powiązane z pulą zaplecza zawierającą wystąpienia ról kart sieciowych (model usługi Resource Manager) lub maszyn wirtualnych/usług Cloud Services (model klasyczny).NAT rules are bound to a back-end pool that contains NICs (Resource Manager) or VMs/Cloud Services role instances (classic). Należy rozważyć utworzenie sieciowej grupy zabezpieczeń dla każdej puli zaplecza, zezwalającej tylko na ruch mapowany za pomocą reguł wdrożonych w modułach równoważenia obciążenia.Consider creating an NSG for each back-end pool, allowing only traffic mapped through the rules implemented in the load balancers. Utworzenie sieciowej grupy zabezpieczeń dla każdej puli zaplecza pozwala zagwarantować, że ruch przychodzący bezpośrednio do puli zaplecza (z pominięciem modułu równoważenia obciążenia) jest również filtrowany.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.
  • We wdrożeniach klasycznych tworzy się punkty końcowe, które mapują porty w module równoważenia obciążenia na porty na maszynach wirtualnych lub w wystąpieniach ról.In classic deployments, you create endpoints that map ports on a load balancer to ports on your VMs or role instances. Można również utworzyć osobisty publiczny moduł równoważenia obciążenia za pomocą usługi Resource Manager.You can also create your own individual public-facing load balancer through Resource Manager. Port docelowy dla ruchu przychodzącego to rzeczywisty port maszyny wirtualnej lub wystąpienie roli, a nie port udostępniany przez moduł równoważenia obciążenia.The destination port for incoming traffic is the actual port in the VM or role instance, not the port exposed by a load balancer. Port źródłowy i adres dla połączenia z maszyną wirtualną to port i adres na komputerze zdalnym w Internecie, a nie port i adres udostępniane przez moduł równoważenia obciążenia.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.
  • Podczas tworzenia sieciowych grup zabezpieczeń do filtrowania ruchu przechodzącego przez wewnętrzny moduł równoważenia obciążenia zastosowany port źródłowy i zakres adresów dotyczą komputera źródłowego, a nie modułu równoważnia obciążenia.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. Port docelowy i zakres adresów dotyczą komputera docelowego, a nie modułu równoważenia obciążenia.The destination port and address range are those of the destination computer, not the load balancer.

InneOther

  • Listy kontroli dostępu (ACL) oparte na punktach końcowych i sieciowe grupy zabezpieczeń nie są obsługiwane w tym samym wystąpieniu maszyny wirtualnej.Endpoint-based access control lists (ACL) and NSGs are not supported on the same VM instance. Jeśli chcesz użyć sieciowej grupy zabezpieczeń, a masz już listę ACL punktów końcowych, najpierw usuń listę ACL punktów końcowych.If you want to use an NSG and have an endpoint ACL already in place, first remove the endpoint ACL. Informacje o sposobie usuwania listy ACL punktów końcowych zawiera artykuł Manage endpoint ACLs (Zarządzanie listami ACL opartymi na punktach końcowych).For information about how to remove an endpoint ACL, see the Manage endpoint ACLs article.
  • Korzystając z usługi Resource Manager, można użyć sieciowej grupy zabezpieczeń skojarzonej z kartą sieciową dla maszyn wirtualnych z wieloma kartami sieciowymi, aby włączyć zarządzanie (dostęp zdalny) dla poszczególnych kart sieciowych.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. Kojarzenie unikatowych sieciowych grup zabezpieczeń z poszczególnymi kartami sieciowymi umożliwia rozdzielenie typów ruchu między kartami sieciowymi.Associating unique NSGs to each NIC enables separation of traffic types across NICs.
  • Podobnie jak w przypadku modułów równoważenia obciążenia podczas filtrowania ruchu z innych sieci wirtualnych należy użyć zakresu adresów źródłowych komputera zdalnego, a nie bramy łączącej sieci wirtualne.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.
  • Wielu usług platformy Azure nie można łączyć z sieciami wirtualnymi.Many Azure services cannot be connected to VNets. Jeśli zasób platformy Azure nie jest podłączony do sieci wirtualnej, nie można użyć sieciowej grupy zabezpieczeń do filtrowania ruchu do tego zasobu.If an Azure resource is not connected to a VNet, you cannot use an NSG to filter traffic to the resource. Przeczytaj dokumentację dotyczącą usług, których używasz, aby ustalić, czy można je podłączyć do sieci wirtualnych.Read the documentation for the services you use to determine whether the service can be connected to a VNet.

Przykładowe wdrożenieSample deployment

Aby zilustrować zastosowanie informacji znajdujących się w tym artykule, należy rozważyć typowy scenariusz dwuwarstwowej aplikacji pokazanej na poniższej ilustracji:To illustrate the application of the information in this article, consider a common scenario of a two tier application shown in the following picture:

Sieciowe grupy zabezpieczeń

Na diagramie maszyny wirtualne Web1 i Web2 są połączone z podsiecią FrontEnd, a maszyny wirtualne DB1 i DB2 są połączone z podsiecią 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. Obie podsieci są częścią sieci wirtualnej TestVNet.Both subnets are part of the TestVNet VNet. Poszczególne składniki aplikacji działają w obrębie maszyny wirtualnej platformy Azure podłączonej do sieci wirtualnej.The application components each run within an Azure VM connected to a VNet. Ten scenariusz ma następujące wymagania:The scenario has the following requirements:

  1. Rozdzielenie ruchu między serwerami WEB i DB.Separation of traffic between the WEB and DB servers.
  2. Reguły równoważenia obciążenia powodują przesyłanie ruchu z modułu równoważenia obciążenia do wszystkich serwerów sieci Web na porcie 80.Load balancing rules forward traffic from the load balancer to all web servers on port 80.
  3. Reguły NAT modułu równoważenia obciążenia powodują przesyłanie ruchu przeznaczonego dla modułu równoważenia obciążenia na porcie 50001 do portu 3389 na maszynie wirtualnej WEB1.Load balancer NAT rules forward traffic coming into the load balancer on port 50001 to port 3389 on the WEB1 VM.
  4. Brak dostępu do maszyn wirtualnych frontonu lub zaplecza z Internetu, z wyjątkiem wymagań numer 2 i 3.No access to the front-end or back-end VMs from the Internet, except requirements 2 and 3.
  5. Brak wychodzącego dostępu do Internetu z serwerów WEB i DB.No outbound Internet access from the WEB or DB servers.
  6. Dostęp z podsieci FrontEnd jest dozwolony do portu 3389 dowolnego serwera sieci Web.Access from the FrontEnd subnet is allowed to port 3389 of any web server.
  7. Dostęp z podsieci FrontEnd jest dozwolony do portu 3389 dowolnego serwera DB.Access from the FrontEnd subnet is allowed to port 3389 of any DB server.
  8. Dostęp z podsieci FrontEnd jest dozwolony do portu 1433 wszystkich serwerów DB.Access from the FrontEnd subnet is allowed to port 1433 of all DB servers.
  9. Rozdzielenie ruchu administracyjnego (port 3389) i ruchu bazy danych (1433) na różne karty sieciowe na serwerach DB.Separation of management traffic (port 3389) and database traffic (1433) on different NICs in DB servers.

Wymagania od 1 do 6 (z wyjątkiem wymagań 3 i 4) są ograniczone do przestrzeni podsieci.Requirements 1-6 (except requirements 3 and 4) are all confined to subnet spaces. Następujące sieciowe grupy zabezpieczeń spełniają poprzednie wymagania, minimalizując jednocześnie liczbę wymaganych sieciowych grup zabezpieczeń:The following NSGs meet the previous requirements, while minimizing the number of NSGs required:

FrontEndFrontEnd

Reguły ruchu przychodzącegoInbound rules

RegułaRule DostępAccess PriorytetPriority Zakres adresów źródłowychSource address range Port źródłowySource port Zakres adresów docelowychDestination address range Port docelowyDestination port ProtokółProtocol
Allow-Inbound-HTTP-InternetAllow-Inbound-HTTP-Internet ZezwalajAllow 100100 InternetInternet * * 8080 TCPTCP
Allow-Inbound-RDP-InternetAllow-Inbound-RDP-Internet ZezwalajAllow 200200 InternetInternet * * 33893389 TCPTCP
Deny-Inbound-AllDeny-Inbound-All ZablokujDeny 300300 InternetInternet * * * TCPTCP

Reguły ruchu wychodzącegoOutbound rules

RegułaRule DostępAccess PriorytetPriority Zakres adresów źródłowychSource address range Port źródłowySource port Zakres adresów docelowychDestination address range Port docelowyDestination port ProtokółProtocol
Deny-Internet-AllDeny-Internet-All ZablokujDeny 100100 * * InternetInternet * *

BackEndBackEnd

Reguły ruchu przychodzącegoInbound rules

RegułaRule DostępAccess PriorytetPriority Zakres adresów źródłowychSource address range Port źródłowySource port Zakres adresów docelowychDestination address range Port docelowyDestination port ProtokółProtocol
Deny-Internet-AllDeny-Internet-All ZablokujDeny 100100 InternetInternet * * * *

Reguły ruchu wychodzącegoOutbound rules

RegułaRule DostępAccess PriorytetPriority Zakres adresów źródłowychSource address range Port źródłowySource port Zakres adresów docelowychDestination address range Port docelowyDestination port ProtokółProtocol
Deny-Internet-AllDeny-Internet-All ZablokujDeny 100100 * * InternetInternet * *

Następujące sieciowe grupy zabezpieczeń są tworzone i wiązane z kartami sieciowymi w tych maszynach wirtualnych:The following NSGs are created and associated to NICs in the following VMs:

WEB1WEB1

Reguły ruchu przychodzącegoInbound rules

RegułaRule DostępAccess PriorytetPriority Zakres adresów źródłowychSource address range Port źródłowySource port Zakres adresów docelowychDestination address range Port docelowyDestination port ProtokółProtocol
Allow-Inbound-RDP-InternetAllow-Inbound-RDP-Internet ZezwalajAllow 100100 InternetInternet * * 33893389 TCPTCP
Allow-Inbound-HTTP-InternetAllow-Inbound-HTTP-Internet ZezwalajAllow 200200 InternetInternet * * 8080 TCPTCP

Uwaga

Zakresem adresów źródłowych dla poprzednich reguł jest Internet, a nie wirtualny adres IP modułu równoważenia obciążenia.The source address range for the previous rules is Internet, not the virtual IP address of for the load balancer. Port źródłowy ma wartość , a nie 500001.The source port is *, not 500001. Reguły NAT dla modułu równoważenia obciążenia nie są takie same jak reguły zabezpieczeń sieciowej grupy zabezpieczeń.NAT rules for load balancers are not the same as NSG security rules. Reguły zabezpieczeń sieciowej grupy zabezpieczeń są zawsze powiązane z oryginalnym źródłem i ostatecznym miejscem przeznaczenia ruchu, a **nie* z modułem równoważenia obciążenia między nimi.NSG security rules are always related to the original source and final destination of traffic, not the load balancer between the two.

WEB2WEB2

Reguły ruchu przychodzącegoInbound rules

RegułaRule DostępAccess PriorytetPriority Zakres adresów źródłowychSource address range Port źródłowySource port Zakres adresów docelowychDestination address range Port docelowyDestination port ProtokółProtocol
Deny-Inbound-RDP-InternetDeny-Inbound-RDP-Internet ZablokujDeny 100100 InternetInternet * * 33893389 TCPTCP
Allow-Inbound-HTTP-InternetAllow-Inbound-HTTP-Internet ZezwalajAllow 200200 InternetInternet * * 8080 TCPTCP

Serwery DB (karta sieciowa zarządzania)DB servers (Management NIC)

Reguły ruchu przychodzącegoInbound rules

RegułaRule DostępAccess PriorytetPriority Zakres adresów źródłowychSource address range Port źródłowySource port Zakres adresów docelowychDestination address range Port docelowyDestination port ProtokółProtocol
Allow-Inbound-RDP-Front-endAllow-Inbound-RDP-Front-end ZezwalajAllow 100100 192.168.1.0/24192.168.1.0/24 * * 33893389 TCPTCP

Serwery DB (karta sieciowa ruchu bazy danych)DB servers (Database traffic NIC)

Reguły ruchu przychodzącegoInbound rules

RegułaRule DostępAccess PriorytetPriority Zakres adresów źródłowychSource address range Port źródłowySource port Zakres adresów docelowychDestination address range Port docelowyDestination port ProtokółProtocol
Allow-Inbound-SQL-Front-endAllow-Inbound-SQL-Front-end ZezwalajAllow 100100 192.168.1.0/24192.168.1.0/24 * * 14331433 TCPTCP

Ponieważ niektóre sieciowe grupy zabezpieczeń są skojarzone z poszczególnymi kartami sieciowymi, reguły mają zastosowanie do zasobów wdrożonych za pomocą usługi Resource Manager.Since some of the NSGs are associated to individual NICs, the rules are for resources deployed through Resource Manager. Reguły są łączone dla podsieci i karty sieciowej w zależności od sposobu ich kojarzenia.Rules are combined for subnet and NIC, depending on how they are associated.

Następne krokiNext steps