Jak sieciowe grupy zabezpieczeń filtrują ruch sieciowy
Za pomocą sieciowej grupy zabezpieczeń platformy Azure można filtrować ruch sieciowy między zasobami platformy Azure w sieci wirtualnej platformy Azure. Grupa zabezpieczeń sieci zawiera reguły zabezpieczeń, które zezwalają na lub blokują przychodzący ruch sieciowy lub wychodzący ruch sieciowy dla kilku typów zasobów platformy Azure. Dla każdej reguły można określić źródło i obiekt docelowy, port i protokół.
W sieci wirtualnej platformy Azure można wdrożyć zasoby z kilku usług platformy Azure. Aby uzyskać pełną listę, zobacz Services that can be deployed into a virtual network (Usługi, które można wdrożyć w sieci wirtualnej). Z każdą siecią podsiecią i interfejsem sieciowym sieci wirtualnej na maszynie wirtualnej możesz skojarzyć zero lub jedną grupę zabezpieczeń sieci. Tę samą grupę zabezpieczeń sieci można zastosować do dowolnej liczby interfejsów sieciowych i podsieci.
Poniższa ilustracja przedstawia różne scenariusze dotyczące sposobu wdrażania grup zabezpieczeń sieci w celu zezwolenia na ruch sieciowy do i z Internetu przez port TCP 80:
Odwołaj się do poprzedniej ilustracji i następującego tekstu, aby zrozumieć, w jaki sposób platforma Azure przetwarza reguły ruchu przychodzącego i wychodzącego dla grup zabezpieczeń sieci:
Ruch przychodzący
W przypadku ruchu przychodzącego platforma Azure przetwarza reguły w sieciowej grupie zabezpieczeń skojarzonej z podsiecią najpierw, jeśli istnieje, a następnie reguły w sieciowej grupie zabezpieczeń skojarzonej z interfejsem sieciowym, jeśli istnieje. Ten proces obejmuje również ruch wewnątrz podsieci.
VM1: reguły zabezpieczeń w sieciowej grupie zabezpieczeń 1 są przetwarzane, ponieważ jest ona skojarzona z podsiecią Subnet1 i vm1 znajduje się w podsieci Subnet1. Chyba że utworzono regułę zezwalającą na ruch przychodzący na porcie 80, domyślna reguła zabezpieczeń DenyAllInbound blokuje ruch. Ten zablokowany ruch nie jest następnie oceniany przez sieciową grupę zabezpieczeń 2, ponieważ jest skojarzony z interfejsem sieciowym. Jeśli jednak sieciowa grupa zabezpieczeń1 zezwala na port 80 w regule zabezpieczeń, sieciowa grupa zabezpieczeń 2 przetwarza ruch. Aby zezwolić na ruch przychodzący na porcie 80 do maszyny wirtualnej, obie grupy NSG1 i NSG2 muszą zawierać regułę zezwalającą ruch przychodzący na porcie 80 z Internetu.
VM2: przetwarzane są reguły w grupie NSG1, ponieważ maszyna wirtualna VM2 znajduje się również w podsieci Subnet1. Ponieważ maszyna wirtualna VM2 nie ma sieciowej grupy zabezpieczeń skojarzonej z interfejsem sieciowym, odbiera cały ruch dozwolony przez sieciową grupę zabezpieczeń1 lub odrzuca cały ruch zabroniony przez sieciową grupę zabezpieczeń1. Ruch jest dozwolony albo blokowany dla wszystkich zasobów w tej samej podsieci, gdy grupa zabezpieczeń sieci jest skojarzona z podsiecią.
VM3: Ponieważ nie ma sieciowej grupy zabezpieczeń skojarzonej z podsiecią Subnet2, ruch jest dozwolony do podsieci i przetwarzany przez sieciową grupę zabezpieczeń 2, ponieważ sieciowa grupa zabezpieczeń2 jest skojarzona z interfejsem sieciowym dołączonym do maszyny wirtualnej VM3.
VM4: ruch jest blokowany do maszyny wirtualnej VM4, ponieważ sieciowa grupa zabezpieczeń nie jest skojarzona z podsiecią Subnet3 ani interfejsem sieciowym na maszynie wirtualnej. Cały ruch sieciowy jest blokowany za pośrednictwem podsieci i interfejsu sieciowego, jeśli nie ma skojarzonej sieciowej grupy zabezpieczeń.
Ruch wychodzący
W przypadku ruchu wychodzącego platforma Azure przetwarza reguły w sieciowej grupie zabezpieczeń skojarzonej z interfejsem sieciowym, jeśli istnieje, a następnie reguły w sieciowej grupie zabezpieczeń skojarzonej z podsiecią, jeśli istnieje. Ten proces obejmuje również ruch wewnątrz podsieci.
Maszyna VM1: przetwarzane są reguły zabezpieczeń w grupie NSG2. Domyślna reguła zabezpieczeń AllowInternetOutbound w sieciowej grupie zabezpieczeń1 i sieciowej grupie zabezpieczeń 2 zezwala na ruch, chyba że zostanie utworzona reguła zabezpieczeń, która nie zezwala na ruch wychodzący na porcie 80 do Internetu. Jeśli sieciowa grupa zabezpieczeń 2 nie zezwala na port 80 w regule zabezpieczeń, odrzuca ruch, a sieciowa grupa zabezpieczeń 1 nigdy nie ocenia go. Aby zablokować port 80 na maszynie wirtualnej, jedna lub obie grupy zabezpieczeń sieci muszą zawierać regułę, która blokuje ruch do Internetu na porcie 80.
VM2: cały ruch jest wysyłany przez interfejs sieciowy do podsieci, ponieważ interfejs sieciowy dołączony do maszyny wirtualnej VM2 nie ma skojarzonej sieciowej grupy zabezpieczeń. Reguły w grupie NSG1 są przetwarzane.
VM3: Jeśli sieciowa grupa zabezpieczeń 2 odmawia portu 80 w regule zabezpieczeń, blokuje ruch. Jeśli sieciowa grupa zabezpieczeń 2 nie blokuje portu 80, domyślna reguła zabezpieczeń AllowInternetOutbound w sieciowej grupie zabezpieczeń G2 zezwala na ruch, ponieważ nie ma sieciowej grupy zabezpieczeń skojarzonej z podsiecią Subnet2.
VM4: cały ruch sieciowy z maszyny wirtualnej VM4 jest dozwolony, ponieważ żadna grupa zabezpieczeń sieci nie jest skojarzona z interfejsem sieciowym dołączonym do maszyny wirtualnej ani z podsiecią Subnet3.
Ruch wewnątrz podsieci
Należy pamiętać, że reguły zabezpieczeń w sieciowej grupie zabezpieczeń skojarzonej z podsiecią mogą mieć wpływ na łączność między maszynami wirtualnymi w niej. Domyślnie maszyny wirtualne w tej samej podsieci mogą komunikować się na podstawie domyślnej reguły sieciowej grupy zabezpieczeń zezwalającej na ruch wewnątrz podsieci. Jeśli dodasz regułę do sieciowej grupy zabezpieczeń1 , która blokuje cały ruch przychodzący i wychodzący, maszyny VM1 i VM2 nie będą mogły komunikować się ze sobą.
Reguły agregowane stosowane do interfejsu sieciowego można łatwo wyświetlić, wyświetlając obowiązujące reguły zabezpieczeń dla interfejsu sieciowego. Możesz również skorzystać z możliwości weryfikowania przepływu protokołu IP w celu ustalenia, czy komunikacja z lub do interfejsu sieciowego jest dozwolona. Możesz użyć funkcji weryfikacji przepływu adresów IP, aby określić, czy komunikacja jest dozwolona, czy blokowana. Ponadto użyj funkcji weryfikacji przepływu adresów IP, aby uwidocznieć tożsamość reguły zabezpieczeń sieci odpowiedzialnej za zezwolenie na ruch lub odmowę go.
Uwaga
Sieciowe grupy zabezpieczeń są skojarzone z podsieciami lub maszynami wirtualnymi i usługami w chmurze wdrożonych w klasycznym modelu wdrażania oraz do podsieci lub interfejsów sieciowych w modelu wdrażania usługi Resource Manager. Aby dowiedzieć się więcej na temat modeli wdrażania platformy Azure, zapoznaj się z artykułem Understand Azure deployment models (Informacje na temat modeli wdrażania platformy Azure).
Napiwek
Jeśli nie masz określonego powodu, zalecamy skojarzenie sieciowej grupy zabezpieczeń z podsiecią lub interfejsem sieciowym, ale nie obu tych elementów. Ponieważ reguły w grupie zabezpieczeń sieci skojarzonej z podsiecią mogą powodować konflikt z regułami w grupie zabezpieczeń sieci skojarzonej z interfejsem sieciowym, możesz napotkać nieoczekiwane problemy z komunikacją, co będzie wymagać rozwiązywania problemów.
Następne kroki
Aby dowiedzieć się więcej o zasobach platformy Azure, które można wdrożyć w sieci wirtualnej i skojarzyć z nimi grupy zabezpieczeń sieci, zobacz Integracja z siecią wirtualną dla usług platformy Azure.
Jeśli nigdy nie utworzono sieciowej grupy zabezpieczeń, możesz wykonać szybki samouczek, aby uzyskać pewne doświadczenie w tworzeniu grupy zabezpieczeń.
Jeśli znasz grupy zabezpieczeń sieci i chcesz nimi zarządzać, zobacz Manage a network security group (Zarządzanie sieciową grupą zabezpieczeń).
Jeśli występują problemy z komunikacją i musisz rozwiązać problemy z grupami zabezpieczeń sieci, zobacz Diagnozowanie problemu z filtrowaniem ruchu sieciowego maszyny wirtualnej.
Dowiedz się, jak włączyć dzienniki przepływu sieciowej grupy zabezpieczeń w celu analizowania ruchu sieciowego do i z zasobów, które mają skojarzona sieciowa grupa zabezpieczeń.