Azure : Mise en place d’un réseau virtuel avec deux sous-réseaux et des règles Network Security Groups

Aujourd’hui je vous propose une nouvelle vidéo dont l’objectif est de découvrir les réseaux virtuels Azure. J’en profite pour vous inviter à vous abonner à ma chaîne Youtube "Nicolas Housset".

J’ai créé cette chaîne début Mai 2020 et j’essaye de publier régulièrement des vidéos sur SAS, Viya, Azure et le cloud d’une façon plus globale.

Dans cette nouvelle vidéo, je vous présente la création d’un réseau virtuel avec des sous-réseaux frontaux et principaux. Le trafic vers le sous-réseau frontal est limité à HTTP et SSH, tandis que le trafic vers le sous-réseau principal est limité à MySQL, port 3306.  Je présente également la création de deux machines virtuelles, une dans chaque sous-réseau, sur laquelle je vais déployer Apache en front et le MySQL en back.

https://www.youtube.com/watch?v=4rTSI7YGnl4

Cet article vient donc en complément de ma vidéo Youtube . En effet, je vous présente les commandes Azure utilisé dans ma démonstration.

Je rappelle que cette vidéo n’est pas un tutoriel complet cette mais une permet d’avoir une vision d’ensemble de ce qu’il est possible de faire avec Azure.

Commandes Azure cli

Création d'un groupe de ressources

az group create \
--name MyResourceGroup \
--location eastus

az group create

Créer un réseau virtuel avec un sous-réseau front-end

az network vnet create \
--name MyVnet \
--resource-group MyResourceGroup \
--location eastus \
--address-prefix 10.0.0.0/16 \
--subnet-name MySubnet-FrontEnd \
--subnet-prefix 10.0.1.0/24

az network vnet create

Créer un sous-réseau back-end.

az network vnet subnet create \
--address-prefix 10.0.2.0/24 \
--name MySubnet-BackEnd \
--resource-group MyResourceGroup \
--vnet-name MyVnet

Créer un groupe de sécurité réseau pour le sous-réseau frontal.

az network nsg create \
--resource-group MyResourceGroup \
--name MyNsg-FrontEnd \
--location eastus

az network nsg create

Créer une règle NSG pour autoriser le trafic HTTP depuis Internet vers le sous-réseau front-end

az network nsg rule create \
--resource-group MyResourceGroup \
--nsg-name MyNsg-FrontEnd \
--name Allow-HTTP-All \
--access Allow \
--protocol Tcp \
--direction Inbound \
--priority 100 \
--source-address-prefix Internet \
--source-port-range "*" \
--destination-address-prefix "*" \
--destination-port-range 80

Créer une règle NSG pour autoriser le trafic SSH depuis Internet vers le sous-réseau front-end

az network nsg rule create \
--resource-group MyResourceGroup \
--nsg-name MyNsg-FrontEnd \
--name Allow-SSH-All \
--access Allow \
--protocol Tcp \
--direction Inbound \
--priority 300 \
--source-address-prefix Internet \
--source-port-range "*" \
--destination-address-prefix "*" \
--destination-port-range 22

Associer le NSG MyNsg-FrontEnd au sous-réseau front-end

az network vnet subnet update \
--vnet-name MyVnet \
--name MySubnet-FrontEnd \
--resource-group MyResourceGroup \
--network-security-group MyNsg-FrontEnd

Créer un groupe de sécurité réseau pour le sous-réseau back-end

az network nsg create \
--resource-group MyResourceGroup \
--name MyNsg-BackEnd \
--location eastus

Créer une règle NSG pour autoriser le trafic MYSQL (3306) depuis le sous-réseau front-end vers le sous-réseau back-end

az network nsg rule create \
--resource-group MyResourceGroup \
--nsg-name MyNsg-BackEnd \
--name Allow-MySql-FrontEnd \
--access Allow --protocol Tcp \
--direction Inbound \
--priority 100 \
--source-address-prefix 10.0.1.0/24 \
--source-port-range "" \
--destination-address-prefix "*" \
--destination-port-range 3306

Créer une règle NSG pour autoriser le trafic SSH d'Internet vers le sous-réseau back-end.

az network nsg rule create \
--resource-group MyResourceGroup \
--nsg-name MyNsg-BackEnd \
--name Allow-SSH-All \
--access Allow \
--protocol Tcp \
--direction Inbound \
--priority 200 \
--source-address-prefix Internet \
--source-port-range "*" \
--destination-address-prefix "
" \
--destination-port-range 22

Commandes utiles

RépertorieR le sous-réseau dans le réseau virtuel de l'application:

resource_group=$(az group list --query [].name --output tsv)
az network vnet subnet list --resource-group $resource_group --vnet-name app --output table

Répertorier les réseaux virtuels dans l'environnement:

az configure --defaults location=westus2
az network vnet list --output table

Interroger l'ID du groupe de sécurité réseau (NSG) du sous-réseau:

az network vnet subnet list --resource-group $resource_group --vnet-name app --query [].networkSecurityGroup.id --output tsv

Liste des rules associé à une NSG

az network nsg rule list --resource-group $resource_group --nsg-name website-vmssnsg --output jsonc

Quelques liens

Créer un réseau virtuel pour les applications multi-tier

Nicolas Housset

Passionné d'informatique, je suis Consultant et expert technique SAS VIYA, également co-fondateur de la société Flexcelite. Spécialisé dans les technologies SAS (Viya, 9.4) et les infrastructures associées (Linux, Hadoop, Azure), ce blog est mon espace pour partager mes mémos techniques et retours d'expérience.