Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Dans ce guide de démarrage rapide, vous déployez une machine virtuelle et utilisez Network Watcher vérification des flux IP pour tester la connectivité vers différentes adresses IP et à partir d’elles. En utilisant les résultats de vérification du flux IP, vous pouvez déterminer la règle de sécurité qui bloque le trafic et cause la défaillance de communication. Vous apprenez aussi comment résoudre le problème. Vous apprenez également à utiliser les règles de sécurité efficaces pour une interface réseau afin de déterminer pourquoi une règle de sécurité autorise ou refuse le trafic.
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
Prérequis
Compte Azure avec un abonnement actif.
Azure Cloud Shell ou Azure CLI.
Dans les étapes de cet article, vous exécutez les commandes Azure CLI de manière interactive dans Azure Cloud Shell. Pour exécuter les commandes dans le Cloud Shell, sélectionnez Ouvrir Cloud Shell dans le coin supérieur droit d’un bloc de code. Sélectionnez Copier pour copier le code, puis collez-le dans Cloud Shell afin de l’exécuter. Vous pouvez démarrer Azure Cloud Shell depuis le Portail Azure.
Vous pouvez également installer Azure CLI localement afin d’exécuter les commandes. Ce guide de démarrage rapide nécessite la version 2.0 ou ultérieure de l’interface Azure CLI. Si vous exécutez Azure CLI localement, connectez-vous à Azure en utilisant la commande az login.
Création d'une machine virtuelle
Dans cette section, vous créez un réseau virtuel et un sous-réseau dans la région Est des Etats-Unis. Ensuite, vous créez une machine virtuelle dans le sous-réseau avec un groupe de sécurité réseau par défaut.
Créez un groupe de ressources à l’aide de la commande az group create. Un groupe de ressources Azure est un conteneur logique dans lequel vous déployez et gérez des ressources Azure.
# Create a resource group. az group create --name 'myResourceGroup' --location 'eastus'Créez un réseau virtuel avec la commande 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/24Créez un groupe de sécurité réseau par défaut en utilisant la création NSG d’az network.
# Create a default network security group. az network nsg create --name 'myVM-nsg' --resource-group 'myResourceGroup' --location 'eastus'Note
Les règles par défaut du groupe de sécurité réseau bloquent l’accès entrant à partir d’Internet, y compris SSH. Pour vous connecter à la machine virtuelle, utilisez Azure Bastion. Pour plus d’informations, consultez Démarrage rapide : Déployer Azure Bastion avec les paramètres par défaut.
Créez une machine virtuelle en utilisant la machine virtuelle 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
Testez la communication réseau en utilisant la vérification de flux IP
Dans cette section, utilisez la capacité de vérification du flux IP de Network Watcher pour tester la communication réseau vers et depuis la machine virtuelle.
Utilisez la commande az-network watcher test-ip-flow pour tester la communication sortante de myVM vers 13.107.21.200 en utilisant la vérification du flux IP (
13.107.21.200est l’une des adresses IP publiques utilisées parwww.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'Après quelques secondes, vous obtenez une sortie similaire à l’exemple suivant :
Access RuleName ------ -------- Allow defaultSecurityRules/AllowInternetOutBoundLe résultat du test indique que l’accès est autorisé à 13.107.21.200 en raison de la règle de sécurité par défaut AllowInternetOutBound. Par défaut, les machines virtuelles Azure peuvent accéder à Internet.
Remplacez RemoteIPAddress par 10.0.1.10 et répétez le test. 10.0.1.10 est une adresse IP privée dans l’espace d’adressage myVNet.
# 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'Après quelques secondes, vous obtenez une sortie similaire à l’exemple suivant :
Access RuleName ------ -------- Allow defaultSecurityRules/AllowVnetOutBoundLe résultat du second test indique que l’accès est autorisé à 10.0.1.10 en raison de la règle de sécurité par défaut AllowVnetOutBound. Par défaut, une machine virtuelle Azure peut accéder à toutes les adresses IP dans l’espace d’adressage de son réseau virtuel.
Remplacez RemoteIPAddress par 10.10.10.10 et répétez le test. 10.10.10.10 est une adresse IP privée qui ne se trouve pas dans l’espace d’adressage myVNet.
# 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'Après quelques secondes, vous obtenez une sortie similaire à l’exemple suivant :
Access RuleName ------ -------- Deny defaultSecurityRules/DenyAllOutBoundLe résultat du troisième test indique que l’accès est refusé à 10.10.10.10 en raison de la règle de sécurité par défaut DenyAllOutBound.
Remplacez la direction par Entrant, le port local par 80 et le port distant par 60000, puis répétez le test.
# 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'Après quelques secondes, vous voyez une sortie similaire à l’exemple suivant :
Access RuleName ------ -------- Deny defaultSecurityRules/DenyAllInBoundLe résultat du quatrième test indique que l’accès est refusé à partir de 10.10.10.10 en raison de la règle de sécurité par défaut DenyAllInBound. Par défaut, tout accès à une machine virtuelle Azure à partir de l’extérieur du réseau virtuel est refusé.
Voir les détails d’une règle de sécurité
Pour comprendre pourquoi les règles de la section précédente permettent ou refusent la communication, examinez les règles de sécurité efficaces pour l’interface réseau de la machine virtuelle myVM en utilisant la commande az network nic list-effect-nsg :
# Get the effective security rules for the network interface of myVM.
az network nic list-effective-nsg --resource-group 'myResourceGroup' --name 'myVmVMNic'
La sortie retournée inclut les informations suivantes pour la règle AllowInternetOutbound qui accorde un accès sortant à 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"
]
},
Vous voyez dans la sortie que le préfixe d’adresse 13.104.0.0/13 figure parmi les préfixes d’adresse de la règle AllowInternetOutBound . Ce préfixe englobe l’adresse IP 13.107.21.200, que vous avez utilisée pour tester la communication sortante vers www.bing.com.
De la même manière, vous pouvez vérifier les autres règles pour voir les préfixes d’adresse IP source et destination sous chaque règle.
Nettoyer les ressources
Lorsque vous n’avez plus besoin des ressources, utilisez azgroup delete pour supprimer le groupe myResourceGroup et toutes les ressources qu’il contient :
# Delete the resource group and all resources it contains.
az group delete --name 'myResourceGroup' --yes