Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Řízení odchozího síťového přístupu je důležitou součástí celkového plánu zabezpečení sítě. Můžete například chtít omezit přístup k webům. Nebo můžete chtít omezit odchozí IP adresy a porty, ke kterým je možné přistupovat.
Jedním ze způsobů, jak můžete řídit odchozí síťový přístup z podsítě Azure, je použít Azure Firewall. Azure Firewall umožňuje nakonfigurovat:
- Pravidla aplikace, která definují plně kvalifikované názvy domén, ke kterým je možné získat přístup z podsítě. Plně kvalifikovaný název domény může také obsahovat instance SQL.
- Pravidla sítě, která definují zdrojovou adresu, protokol, cílový port a cílovou adresu.
Síťový provoz podléhá nakonfigurovaným pravidlům brány firewall, když ho směrujete na bránu firewall jako na výchozí bránu podsítě.
Pro účely tohoto článku vytvoříte zjednodušenou jednu virtuální síť se třemi podsítěmi pro snadné nasazení. Pro produkční nasazení se doporučuje model hub-and-spoke. Brána firewall je ve vlastní virtuální síti. Servery úloh jsou v partnerských virtuálních sítích ve stejné oblasti s jednou nebo více podsítěmi.
- AzureFirewallSubnet – v této podsíti bude brána firewall.
- Workload-SN – v této podsíti bude server úloh. Provoz této podsítě bude procházet bránou firewall.
- AzureBastionSubnet – Azure Bastion je v této podsíti a poskytuje zabezpečený přístup k serveru úloh.
V tomto článku získáte informace o těchto tématech:
- Nastavit testovací síťové prostředí
- Nasadit bránu firewall
- Vytvořit výchozí trasu
- Konfigurace pravidla aplikace pro povolení přístupu k www.microsoft.com
- Nakonfigurovat pravidlo sítě pro povolení přístupu k externím serverům DNS
- Testovat bránu firewall
Pokud chcete, můžete tento postup provést pomocí webu Azure Portal nebo Azure PowerShellu.
Pokud nemáte účet Azure, vytvořte si bezplatný účet před tím, než začnete.
Požadavky
Použijte prostředí Bash v Azure Cloud Shellu. Další informace najdete v tématu Začínáme s Azure Cloud Shellem.
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 Ověřování v Azure 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 Použití a správa rozšíření pomocí 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.55.0 nebo novější azure CLI. Pokud používáte Azure Cloud Shell, je už nainstalovaná nejnovější verze.
Nastavit síť
Nejprve vytvořte skupinu prostředků obsahující prostředky potřebné k nasazení brány firewall. Potom vytvořte virtuální síť, podsítě a testovací servery.
Vytvoření skupiny zdrojů
Skupina prostředků obsahuje všechny prostředky pro nasazení.
az group create --name Test-FW-RG --location eastus
Vytvoření virtuální sítě
Tato virtuální síť má tři podsítě.
Poznámka:
Velikost podsítě AzureFirewallSubnet je /26. Další informace o velikosti podsítě najdete v nejčastějších dotazech ke službě Azure Firewall.
az network vnet create \
--name Test-FW-VN \
--resource-group Test-FW-RG \
--location eastus \
--address-prefix 10.0.0.0/16 \
--subnet-name AzureFirewallSubnet \
--subnet-prefix 10.0.1.0/26
az network vnet subnet create \
--name Workload-SN \
--resource-group Test-FW-RG \
--vnet-name Test-FW-VN \
--address-prefix 10.0.2.0/24
az network vnet subnet create \
--name AzureBastionSubnet \
--resource-group Test-FW-RG \
--vnet-name Test-FW-VN \
--address-prefix 10.0.3.0/26
Vytvoření virtuálního počítače
Vytvořte síťovou kartu pro Srv-Work s konkrétními IP adresami serveru DNS a bez veřejné IP adresy, se kterou chcete testovat.
az network nic create \
--resource-group Test-FW-RG \
--name Srv-Work-NIC \
--vnet-name Test-FW-VN \
--subnet Workload-SN \
--dns-servers <replace with External DNS ip #1> <replace with External DNS ip #2>
Teď vytvořte virtuální počítač úlohy. Následující příkaz vytvoří virtuální počítač s Ubuntu Serverem 22.04 LTS s ověřováním pomocí klíče SSH a nainstaluje Nginx. Po zobrazení výzvy uložte vygenerovaný privátní klíč do .pem souboru pro použití při připojování přes Azure Bastion.
az vm create \
--resource-group Test-FW-RG \
--name Srv-Work \
--location eastus \
--image Ubuntu2204 \
--nics Srv-Work-NIC \
--admin-username azureuser \
--generate-ssh-keys \
--custom-data cloud-init.txt
Vytvořte cloud-init.txt soubor s následujícím obsahem, který nainstaluje Nginx:
#cloud-config
package_upgrade: true
packages:
- nginx
runcmd:
- echo '<h1>'$(hostname)'</h1>' | sudo tee /var/www/html/index.html
Poznámka:
Azure poskytuje výchozí odchozí IP adresu pro virtuální počítače, které nemají přiřazenou veřejnou IP adresu nebo jsou v back-endovém fondu interního základního nástroje pro vyrovnávání zatížení Azure. Výchozí mechanismus odchozích IP adres poskytuje odchozí IP adresu, která není konfigurovatelná.
Výchozí ip adresa odchozího přístupu je zakázaná, když dojde k jedné z následujících událostí:
- Virtuálnímu počítači se přiřadí veřejná IP adresa.
- Virtuální počítač se umístí do zázemního fondu standardního vyrovnávače zatížení s odchozími pravidly nebo bez nich.
- Prostředek Azure NAT Gateway je přiřazen k podsíti virtuálního počítače.
Virtuální počítače, které vytvoříte pomocí škálovacích sad virtuálních počítačů v flexibilním režimu orchestrace, nemají výchozí odchozí přístup.
Další informace o odchozích připojeních v Azure najdete v tématu Výchozí odchozí přístup v Azure a použití překladu zdrojových síťových adres (SNAT) pro odchozí připojení.
Nasazení brány firewall
Teď nasaďte bránu firewall do virtuální sítě.
az network firewall create \
--name Test-FW01 \
--resource-group Test-FW-RG \
--location eastus
az network public-ip create \
--name fw-pip \
--resource-group Test-FW-RG \
--location eastus \
--allocation-method static \
--sku standard
az network firewall ip-config create \
--firewall-name Test-FW01 \
--name FW-config \
--public-ip-address fw-pip \
--resource-group Test-FW-RG \
--vnet-name Test-FW-VN
az network firewall update \
--name Test-FW01 \
--resource-group Test-FW-RG
az network public-ip show \
--name fw-pip \
--resource-group Test-FW-RG
fwprivaddr="$(az network firewall ip-config list --resource-group Test-FW-RG --firewall-name Test-FW01 --query "[?name=='FW-config'].privateIpAddress" --output tsv)"
Poznamenejte si privátní IP adresu. Budete ji potřebovat později při vytváření výchozí trasy.
Nasazení služby Azure Bastion
Nasaďte Azure Bastion pro bezpečné připojení k virtuálnímu počítači Srv-Work bez nutnosti veřejných IP adres nebo jump serveru.
az network public-ip create \
--resource-group Test-FW-RG \
--name bastion-pip \
--sku Standard \
--location eastus
az network bastion create \
--name Test-Bastion \
--public-ip-address bastion-pip \
--resource-group Test-FW-RG \
--vnet-name Test-FW-VN \
--location eastus \
--sku Basic
Poznámka:
Dokončení nasazení služby Azure Bastion může trvat přibližně 10 minut.
Vytvořit výchozí trasu
Vytvoření směrovací tabulky se zakázaným šířením tras protokolu BGP
az network route-table create \
--name Firewall-rt-table \
--resource-group Test-FW-RG \
--location eastus \
--disable-bgp-route-propagation true
Vytvořte trasu.
az network route-table route create \
--resource-group Test-FW-RG \
--name DG-Route \
--route-table-name Firewall-rt-table \
--address-prefix 0.0.0.0/0 \
--next-hop-type VirtualAppliance \
--next-hop-ip-address $fwprivaddr
Přidružení směrovací tabulky k podsíti
az network vnet subnet update \
--name Workload-SN \
--resource-group Test-FW-RG \
--vnet-name Test-FW-VN \
--address-prefixes 10.0.2.0/24 \
--route-table Firewall-rt-table
Konfigurace pravidla aplikace
Pravidlo aplikace umožňuje odchozí přístup k www.microsoft.com.
az network firewall application-rule create \
--collection-name App-Coll01 \
--firewall-name Test-FW01 \
--name Allow-Microsoft \
--protocols Http=80 Https=443 \
--resource-group Test-FW-RG \
--target-fqdns www.microsoft.com \
--source-addresses 10.0.2.0/24 \
--priority 200 \
--action Allow
Brána Azure Firewall obsahuje vestavěnou kolekci pravidel pro FQDN infrastruktur, které jsou ve výchozím nastavení povolené. Tyto plně kvalifikované názvy domén jsou specifické pro tuto platformu a pro jiné účely je nelze použít. Další informace najdete v tématu Plně kvalifikované názvy domén infrastruktury.
Konfigurace pravidla sítě
Pravidlo sítě umožňuje odchozí přístup ke dvěma veřejným IP adresám DNS podle vašeho uvážení na portu 53 (DNS).
az network firewall network-rule create \
--collection-name Net-Coll01 \
--destination-addresses <replace with DNS ip #1> <replace with DNS ip #2> \
--destination-ports 53 \
--firewall-name Test-FW01 \
--name Allow-DNS \
--protocols UDP \
--resource-group Test-FW-RG \
--priority 200 \
--source-addresses 10.0.2.0/24 \
--action Allow
Testovat bránu firewall
Teď otestujte bránu firewall a ověřte, že funguje podle očekávání.
Poznamenejte si privátní IP adresu virtuálního počítače Srv-Work :
az vm list-ip-addresses \ --resource-group Test-FW-RG \ --name Srv-WorkV portálu Azure přejděte na virtuální počítač Srv-Work a vyberte Připojit>Připojit přes Bastion.
Zadejte uživatelské jméno azureuser a nahrajte soubor privátního klíče
.pem, který se vygeneroval při vytváření virtuálního počítače. Vyberte Připojit pro otevření relace SSH.V relaci SSH spusťte následující příkazy pro otestování resoluce DNS:
nslookup www.google.com nslookup www.microsoft.comOba příkazy by měly vrátit odpovědi, které ukazují, že vaše dotazy DNS procházejí bránou firewall.
Spuštěním následujících příkazů otestujte webový přístup:
curl https://www.microsoft.com curl https://www.google.comPožadavek
www.microsoft.comby měl být úspěšný a vrátit obsah HTML, zatímcowww.google.compožadavek by měl selhat nebo vypršet časový limit. To ukazuje, že vaše pravidla brány firewall fungují podle očekávání.
Teď jste ověřili, že pravidla brány firewall fungují:
- Názvy DNS můžete přeložit pomocí nakonfigurovaného externího serveru DNS.
- Můžete přejít na jediný povolený plně kvalifikovaný název domény, ale jinam už ne.
Vyčištění prostředků
Prostředky brány firewall můžete zachovat pro další kurz nebo pokud už je nepotřebujete, odstraňte skupinu prostředků Test-FW-RG a odstraňte všechny prostředky související s bránou firewall:
az group delete \
--name Test-FW-RG