Filtrování síťového provozu pomocí skupiny zabezpečení sítě pomocí Azure CLI
Příchozí a odchozí provoz podsítě virtuální sítě můžete filtrovat pomocí skupiny zabezpečení sítě. Skupiny zabezpečení sítě obsahují pravidla zabezpečení, která filtrují síťový provoz podle IP adresy, portu a protokolu. Pravidla zabezpečení se vztahují na prostředky nasazené v podsíti. V tomto článku získáte informace o těchto tématech:
- Vytvoření skupiny zabezpečení sítě a pravidel zabezpečení
- Vytvoření virtuální sítě a přidružení skupiny zabezpečení sítě k podsíti
- Nasazení virtuálních počítačů do podsítě
- Testování filtrů provozu
Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.
Předpoklady
Použijte prostředí Bash v Azure Cloud Shellu. Další informace najdete v tématu Rychlý start pro Bash v Azure Cloud Shellu.
Pokud dáváte přednost místnímu spouštění referenčních příkazů rozhraní příkazového řádku, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Další informace najdete v tématu Jak spustit Azure CLI v kontejneru Dockeru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.
Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.
Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
- Tento článek vyžaduje verzi 2.0.28 nebo novější azure CLI. Pokud používáte Azure Cloud Shell, je už nainstalovaná nejnovější verze.
Vytvoření skupiny zabezpečení sítě
Skupina zabezpečení sítě obsahuje pravidla zabezpečení. Pravidla zabezpečení určují zdroj a cíl. Zdroji a cíli můžou být skupiny zabezpečení aplikací.
Vytvoření skupin zabezpečení aplikací
Nejprve vytvořte skupinu prostředků pro všechny prostředky vytvořené v tomto článku pomocí příkazu az group create. Následující příklad vytvoří skupinu prostředků v umístění eastus:
az group create \
--name myResourceGroup \
--location eastus
Vytvořte skupinu zabezpečení aplikace pomocí příkazu az network asg create. Skupina zabezpečení aplikací umožňuje seskupovat servery s podobnými požadavky na filtrování portů. Následující příklad vytvoří dvě skupiny zabezpečení aplikací.
az network asg create \
--resource-group myResourceGroup \
--name myAsgWebServers \
--location eastus
az network asg create \
--resource-group myResourceGroup \
--name myAsgMgmtServers \
--location eastus
Vytvoření skupiny zabezpečení sítě
Vytvořte skupinu zabezpečení sítě pomocí příkazu az network nsg create. Následující příklad vytvoří skupinu zabezpečení sítě myNsg:
# Create a network security group
az network nsg create \
--resource-group myResourceGroup \
--name myNsg
Vytvoření pravidel zabezpečení
Vytvořte pravidlo zabezpečení pomocí příkazu az network nsg rule create. Následující příklad vytvoří pravidlo povolující příchozí provoz z internetu do skupiny zabezpečení aplikací myWebServers na portech 80 a 443:
az network nsg rule create \
--resource-group myResourceGroup \
--nsg-name myNsg \
--name Allow-Web-All \
--access Allow \
--protocol Tcp \
--direction Inbound \
--priority 100 \
--source-address-prefix Internet \
--source-port-range "*" \
--destination-asgs "myAsgWebServers" \
--destination-port-range 80 443
Následující příklad vytvoří pravidlo, které povoluje příchozí provoz z internetu do skupiny zabezpečení aplikace myMgmtServers přes port 22:
az network nsg rule create \
--resource-group myResourceGroup \
--nsg-name myNsg \
--name Allow-SSH-All \
--access Allow \
--protocol Tcp \
--direction Inbound \
--priority 110 \
--source-address-prefix Internet \
--source-port-range "*" \
--destination-asgs "myAsgMgmtServers" \
--destination-port-range 22
V tomto článku je SSH (port 22) vystavený internetu pro virtuální počítač myAsgMgmtServers . V produkčních prostředích se místo vystavení portu 22 na internetu doporučuje připojit se k prostředkům Azure, které chcete spravovat pomocí sítě VPN nebo privátního síťového připojení.
Vytvoření virtuální sítě
Vytvořte virtuální síť pomocí příkazu az network vnet create. Následující příklad vytvoří virtuální síť myVirtualNetwork:
az network vnet create \
--name myVirtualNetwork \
--resource-group myResourceGroup \
--address-prefixes 10.0.0.0/16
Přidejte podsíť do virtuální sítě pomocí příkazu az network vnet subnet create. Následující příklad do virtuální sítě přidá podsíť mySubnet a přidruží k ní skupinu zabezpečení sítě myNsg:
az network vnet subnet create \
--vnet-name myVirtualNetwork \
--resource-group myResourceGroup \
--name mySubnet \
--address-prefix 10.0.0.0/24 \
--network-security-group myNsg
Vytvoření virtuálních počítačů
Vytvořte ve virtuální síti dva virtuální počítače, abyste v pozdějším kroku mohli ověřit filtrování provozu.
Vytvořte virtuální počítač pomocí příkazu az vm create. Následující příklad vytvoří virtuální počítač, který bude sloužit jako webový server. Tato --asgs myAsgWebServers
možnost způsobí, že Azure vytvoří síťové rozhraní, které vytvoří pro virtuální počítač členem skupiny zabezpečení aplikace myAsgWebServers .
Tato možnost je zadaná, --nsg ""
aby azure nemohla vytvořit výchozí skupinu zabezpečení sítě pro síťové rozhraní, které Azure vytvoří při vytváření virtuálního počítače. Pro zjednodušení tohoto článku se používá heslo. Klíče se obvykle používají v produkčních nasazeních. Pokud používáte klíče, musíte také nakonfigurovat předávání agenta SSH pro zbývající kroky. Další informace najdete v dokumentaci pro klienta SSH. V následujícím příkazu nahraďte <replace-with-your-password>
heslem podle vašeho výběru.
adminPassword="<replace-with-your-password>"
az vm create \
--resource-group myResourceGroup \
--name myVmWeb \
--image Ubuntu2204 \
--vnet-name myVirtualNetwork \
--subnet mySubnet \
--nsg "" \
--asgs myAsgWebServers \
--admin-username azureuser \
--admin-password $adminPassword
Vytvoření virtuálního počítače trvá několik minut. Po vytvoření virtuálního počítače se vrátí výstup podobný následujícímu příkladu:
{
"fqdns": "",
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVmWeb",
"location": "eastus",
"macAddress": "00-0D-3A-23-9A-49",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "13.90.242.231",
"resourceGroup": "myResourceGroup"
}
Poznamenejte si hodnotu publicIpAddress. Tato adresa se používá pro přístup k virtuálnímu počítači z internetu v pozdějším kroku. Vytvořte virtuální počítač, který bude sloužit jako server pro správu:
az vm create \
--resource-group myResourceGroup \
--name myVmMgmt \
--image Ubuntu2204 \
--vnet-name myVirtualNetwork \
--subnet mySubnet \
--nsg "" \
--asgs myAsgMgmtServers \
--admin-username azureuser \
--admin-password $adminPassword
Vytvoření virtuálního počítače trvá několik minut. Po vytvoření virtuálního počítače si všimněte publicIpAddress ve vráceném výstupu. Tato adresa se používá pro přístup k virtuálnímu počítači v dalším kroku. Nepokračujte dalším krokem, dokud Azure nedokončí vytváření virtuálního počítače.
Testování filtrů provozu
Pomocí následujícího příkazu vytvořte relaci SSH s virtuálním počítačem myVmMgmt . Nahraďte <publicIpAddress> veřejnou IP adresou vašeho virtuálního počítače. V předchozím příkladu je IP adresa 13.90.242.231.
ssh azureuser@<publicIpAddress>
Po zobrazení výzvy k zadání hesla zadejte heslo, které jste zadali v části Vytvoření virtuálních počítačů.
Připojení proběhne úspěšně, protože port 22 je povolený pro příchozí provoz z internetu do skupiny zabezpečení aplikace myAsgMgmtServers , ve které je síťové rozhraní připojené k virtuálnímu počítači myVmMgmt .
Pomocí následujícího příkazu připojte SSH k virtuálnímu počítači myVmWeb z virtuálního počítače myVmMgmt :
ssh azureuser@myVmWeb
Připojení bude úspěšné, protože výchozí pravidlo zabezpečení v obou skupinách zabezpečení sítě povoluje provoz na všech portech mezi všemi IP adresami v rámci virtuální sítě. K virtuálnímu počítači myVmWeb z internetu se nedá připojit přes SSH, protože pravidlo zabezpečení pro myAsgWebServers nepovoluje příchozí port 22 z internetu.
Pomocí následujících příkazů nainstalujte webový server nginx na virtuální počítač myVmWeb :
# Update package source
sudo apt-get -y update
# Install NGINX
sudo apt-get -y install nginx
Virtuální počítač myVmWeb má povolený odchozí provoz na internet, aby načetl nginx, protože výchozí pravidlo zabezpečení umožňuje veškerý odchozí provoz do internetu. Ukončete relaci myVmWeb SSH, která vás nechá na příkazovém username@myVmMgmt:~$
řádku virtuálního počítače myVmMgmt. Pokud chcete načíst úvodní obrazovku nginx z virtuálního počítače myVmWeb , zadejte následující příkaz:
curl myVmWeb
Odhlášení virtuálního počítače myVmMgmt Pokud chcete ověřit, že máte přístup k webovému serveru myVmWeb z prostředí mimo Azure, zadejte curl <publicIpAddress>
z vlastního počítače. Připojení proběhne úspěšně, protože port 80 je povolený pro příchozí spojení z internetu do skupiny zabezpečení aplikace myAsgWebServers , ve které je síťové rozhraní připojené k virtuálnímu počítači myVmWeb .
Vyčištění prostředků
Pokud už ji nepotřebujete, pomocí příkazu az group delete odeberte skupinu prostředků a všechny prostředky, které obsahuje.
az group delete --name myResourceGroup --yes
Další kroky
V tomto článku jste vytvořili skupinu zabezpečení sítě a přidružte ji k podsíti virtuální sítě. Další informace o skupinách zabezpečení sítě najdete v tématech Přehled skupin zabezpečení sítě a Správa skupiny zabezpečení sítě.
Provoz mezi podsítěmi směruje ve výchozím nastavení Azure. Místo toho se můžete rozhodnout směrovat provoz mezi podsítěmi například prostřednictvím virtuálního počítače, který slouží jako brána firewall. Postup najdete v tématu Vytvoření směrovací tabulky.
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro