Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här snabbstarten distribuerar du en virtuell dator och använder Network Watcher IP Flow verify för att testa anslutningen till och från olika IP-adresser. Genom att använda IP-flödesverifieringsresultaten kan du avgöra säkerhetsregeln som blockerar trafiken och orsakar kommunikationsfelet. Du lär dig också hur du kan lösa problemet. Du får också lära dig hur du använder de effektiva säkerhetsreglerna för ett nätverksgränssnitt för att avgöra varför en säkerhetsregel tillåter eller nekar trafik.
Om du inte har en Azure-prenumeration, skapa ett gratis konto innan du börjar.
Förutsättningar
Ett Azure-konto med en aktiv prenumeration.
Azure Cloud Shell eller Azure CLI.
Stegen i den här artikeln kör Azure CLI-kommandona interaktivt i Azure Cloud Shell. Om du vill köra kommandona i Cloud Shell väljer du Öppna Cloud Shell i det övre högra hörnet i ett kodblock. Välj Kopiera för att kopiera koden och klistra in den i Cloud Shell för att köra den. Du kan också köra Cloud Shell inifrån Azure Portal.
Du kan också installera Azure CLI lokalt för att köra kommandona. Den här snabbstarten kräver version 2.0 eller senare av Azure CLI. Om du kör Azure CLI lokalt, logga in på Azure genom att använda az-inloggningskommandot.
Skapa en virtuell dator
I det här avsnittet skapar du ett virtuellt nätverk och ett undernät i regionen USA, östra. Sedan skapar du en virtuell dator i undernätet med en standardnätverkssäkerhetsgrupp.
Skapa en resursgrupp med hjälp av az group create. En Azure-resursgrupp är en logisk container där du distribuerar och hanterar Azure-resurser.
# Create a resource group. az group create --name 'myResourceGroup' --location 'eastus'Skapa ett virtuellt nätverk med az network vnet create.
# Create a virtual network and a subnet. az network vnet create --resource-group 'myResourceGroup' --name 'myVNet' --subnet-name 'mySubnet' --subnet-prefixes 10.0.0.0/24Skapa en standard nätverkssäkerhetsgrupp genom att använda az network nsg create.
# Create a default network security group. az network nsg create --name 'myVM-nsg' --resource-group 'myResourceGroup' --location 'eastus'Anmärkning
Standardreglerna för nätverkssäkerhetsgruppen blockerar all inkommande åtkomst från Internet, inklusive SSH. Om du vill ansluta till den virtuella datorn använder du Azure Bastion. Mer information finns i Snabbstart: Distribuera Azure Bastion med standardinställningar.
Skapa en virtuell maskin genom att använda az vm create.
# Create a Linux virtual machine using the latest Ubuntu 20.04 LTS image. az vm create --resource-group 'myResourceGroup' --name 'myVM' --location 'eastus' --vnet-name 'myVNet' --subnet 'mySubnet' --public-ip-address '' --nsg 'myVM-nsg' --image 'Canonical:0001-com-ubuntu-server-focal:20_04-lts-gen2:latest' --generate-ssh-keys
Testa nätverkskommunikation med hjälp av IP-flödesverifiering
I detta avsnitt använder du IP-flödesverifieringsfunktionen i Network Watcher för att testa nätverkskommunikation till och från den virtuella maskinen.
Använd az network watcher test-ip-flow-kommandot för att testa utgående kommunikation från myVM till 13.107.21.200 genom att använda IP flow verify (
13.107.21.200är en av de publika IP-adresserna som används avwww.bing.com):# Start the IP flow verify session to test outbound flow to www.bing.com. az network watcher test-ip-flow --direction 'outbound' --protocol 'TCP' --local '10.0.0.4:60000' --remote '13.107.21.200:80' --vm 'myVM' --nic 'myVmVMNic' --resource-group 'myResourceGroup' --out 'table'Efter några sekunder får du utdata som liknar följande exempel:
Access RuleName ------ -------- Allow defaultSecurityRules/AllowInternetOutBoundTestresultatet anger att åtkomst tillåts till 13.107.21.200 på grund av standardsäkerhetsregeln AllowInternetOutBound. Som standard har virtuella Azure-datorer åtkomst till Internet.
Ändra RemoteIPAddress till 10.0.1.10 och upprepa testet. 10.0.1.10 är en privat IP-adress i myVNet-adressutrymmet .
# Start the IP flow verify session to test outbound flow to 10.0.1.10. az network watcher test-ip-flow --direction 'outbound' --protocol 'TCP' --local '10.0.0.4:60000' --remote '10.0.1.10:80' --vm 'myVM' --nic 'myVmVMNic' --resource-group 'myResourceGroup' --out 'table'Efter några sekunder får du utdata som liknar följande exempel:
Access RuleName ------ -------- Allow defaultSecurityRules/AllowVnetOutBoundResultatet av det andra testet anger att åtkomst tillåts till 10.0.1.10 på grund av standardsäkerhetsregeln AllowVnetOutBound. Som standard kan en virtuell Azure-dator komma åt alla IP-adresser i adressutrymmet för det virtuella nätverket.
Ändra RemoteIPAddress till 10.10.10.10 och upprepa testet. 10.10.10.10 är en privat IP-adress som inte finns i myVNet-adressutrymmet .
# Start the IP flow verify session to test outbound flow to 10.10.10.10. az network watcher test-ip-flow --direction 'outbound' --protocol 'TCP' --local '10.0.0.4:60000' --remote '10.10.10.10:80' --vm 'myVM' --nic 'myVmVMNic' --resource-group 'myResourceGroup' --out 'table'Efter några sekunder får du utdata som liknar följande exempel:
Access RuleName ------ -------- Deny defaultSecurityRules/DenyAllOutBoundResultatet av det tredje testet anger att åtkomst nekas till 10.10.10.10 på grund av standardsäkerhetsregeln DenyAllOutBound.
Ändra riktning till inkommande, den lokala porten till 80 och fjärrporten till 60000 och upprepa sedan testet.
# Start the IP flow verify session to test inbound flow from 10.10.10.10. az network watcher test-ip-flow --direction 'inbound' --protocol 'TCP' --local '10.0.0.4:80' --remote '10.10.10.10:6000' --vm 'myVM' --nic 'myVmVMNic' --resource-group 'myResourceGroup' --out 'table'Efter några sekunder ser du ett resultat liknande följande exempel:
Access RuleName ------ -------- Deny defaultSecurityRules/DenyAllInBoundResultatet av det fjärde testet anger att åtkomst nekas från 10.10.10.10 på grund av standardsäkerhetsregeln DenyAllInBound. Som standard nekas all åtkomst till en virtuell Azure-dator utanför det virtuella nätverket.
Visa information om en säkerhetsregel
För att förstå varför reglerna i föregående avsnitt tillåter eller nekar kommunikation, granska de effektiva säkerhetsreglerna för nätverksgränssnittet i myVM :s virtuella maskin genom att använda kommandot az network nic list-effective-nsg :
# Get the effective security rules for the network interface of myVM.
az network nic list-effective-nsg --resource-group 'myResourceGroup' --name 'myVmVMNic'
Den returnerade utdatan innehåller följande information för regeln AllowInternetOutbound som ger utgående åtkomst till www.bing.com:
{
"access": "Allow",
"destinationAddressPrefix": "Internet",
"destinationAddressPrefixes": [
"Internet"
],
"destinationPortRange": "0-65535",
"destinationPortRanges": [
"0-65535"
],
"direction": "Outbound",
"expandedDestinationAddressPrefix": [
"1.0.0.0/8",
"2.0.0.0/7",
"4.0.0.0/9",
"4.144.0.0/12",
"4.160.0.0/11",
"4.192.0.0/10",
"5.0.0.0/8",
"6.0.0.0/7",
"8.0.0.0/7",
"11.0.0.0/8",
"12.0.0.0/8",
"13.0.0.0/10",
"13.64.0.0/11",
"13.104.0.0/13",
"13.112.0.0/12",
"13.128.0.0/9",
"14.0.0.0/7",
...
...
...
"200.0.0.0/5",
"208.0.0.0/4"
],
"name": "defaultSecurityRules/AllowInternetOutBound",
"priority": 65001,
"protocol": "All",
"sourceAddressPrefix": "0.0.0.0/0",
"sourceAddressPrefixes": [
"0.0.0.0/0",
"0.0.0.0/0"
],
"sourcePortRange": "0-65535",
"sourcePortRanges": [
"0-65535"
]
},
Du ser i utdatan att adressprefixet 13.104.0.0/13 är bland adressprefixen i AllowInternetOutBound-regeln . Detta prefix omfattar IP-adressen 13.107.21.200, som du använde för att testa utgående kommunikation till www.bing.com.
På samma sätt kan du kontrollera de andra reglerna för att se käll- och mål-IP-adressprefixen under varje regel.
Rensa resurser
När du inte längre behöver resurserna, använd az group delete för att ta bort myResourceGroup-resursgruppen och alla resurser den innehåller:
# Delete the resource group and all resources it contains.
az group delete --name 'myResourceGroup' --yes