Anteckning
Å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. Med hjälp av resultatet av verifieringen av IP-flödet fastställer du säkerhetsregeln som blockerar trafiken och orsakar kommunikationsfelet och lär dig hur du kan lösa det. 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 loggar du in på Azure med kommandot az login .
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 az group create. En Azure-resursgrupp är en logisk behållare i vilken Azure-resurser distribueras och hanteras.
# 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/24
Skapa en standardnätverkssäkerhetsgrupp med az network nsg create.
# Create a default network security group. az network nsg create --name 'myVM-nsg' --resource-group 'myResourceGroup' --location 'eastus'
Skapa en virtuell dator med az vm create. Ange ett användarnamn och lösenord när du uppmanas till det.
# 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'
Testa nätverkskommunikation med IP-flödesverifiering
I det här avsnittet använder du funktionen för att verifiera IP-flöde i Network Watcher för att testa nätverkskommunikationen till och från den virtuella datorn.
Använd kommandot az network watcher test-ip-flow för att testa utgående kommunikation från myVM till 13.107.21.200 med hjälp av IP flow verify (
13.107.21.200
är en av de offentliga 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/AllowInternetOutBound
Testresultatet 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/AllowVnetOutBound
Resultatet 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 ------ -------- Allow defaultSecurityRules/DenyAllOutBound
Resultatet 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 får du utdata som liknar följande exempel:
Access RuleName ------ -------- Allow defaultSecurityRules/DenyAllInBound
Resultatet 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
Om du vill ta reda på varför reglerna i föregående avsnitt tillåter eller nekar kommunikation granskar du de gällande säkerhetsreglerna för nätverksgränssnittet för den virtuella myVM-datorn med hjälp av 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'
De returnerade utdata innehåller följande information för regeln AllowInternetOutbound som tillät 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 kan se i utdata 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 den inte längre behövs, använd az group delete för att ta bort resursgruppen myResourceGroup och alla resurser som den innehåller.
# Delete the resource group and all resources it contains.
az group delete --name 'myResourceGroup' --yes