Archives de octobre, 2019

Il existe aujourd’hui plusieurs outils graphiques et en ligne de commande (GUI & CLI) vous permettant de gérer vos environnements et ressources Cloud Azure.

Nous distinguons :

  • Portail Azure
  • Azure CLI
  • Windows PowerShell (Az Module)
  • API REST
  • Azure SDKs

 

Si vous n’êtes pas encore familier avec PowerShell ou Bash (CLI), vous allez sûrement commencer à déployer et manager vos ressources Azure via le Portail Azure, disponible depuis cet URL : https://portal.azure.com

Aujourd’hui, je vais justement vous présenter quelques raccourcis clavier utiles disponibles directement depuis le Portail Azure.

Ces raccourcis peuvent vous être utiles pour mieux naviguer sur le Portail Azure et accéder rapidement à certains services qui y sont intégrés.

 

Liste des Raccourcis Clavier du Portal Azure

La liste des raccourcis clavier est disponible depuis le Portail Azure, il suffit de cliquer sur < Help >, disponible depuis le coin supérieur droit, et cliquez ensuite sur « Keyboard Shortcuts » ou « Raccourcis clavier » si votre interface Web est configurée en langue « fr-FR » :

La liste des raccourcis est affichée comme montré dans la capture d’écran suivante :

N’hésitez pas à tester les différents Shotcuts, comme par exemple « G+N » (il faut maintenir la touche G et cliquer ensuite sur N) pour faire apparaître l’assistant de création de nouvelle ressource Azure suivant :

 

Vidéo from Microsoft Azure

Je vous invite à visionner la vidéo ci-dessous montrant l’utilisation des Shortcuts du Portail Azure.

Elle a été réalisée par la Team Microsoft Azure

Information utile

La liste des raccourcis clavier du Portail Azure est également documentée sur le service docs.azure, et est disponible ici.

Je vous invite à consulter cette page régulièrement pour rester informé des dernières modifications /ajout de nouveaux raccourcis.

Enjoy :).

IoT Analytics platform for Real-Time and Streaming Analytics - XenonStack

 

Si vous intervenez sur des environnements Cloud Azure, en tant que Consultant /Architecte ou même auditeur, vous avez sûrement eu besoin de documenter la ou les architecture Azure sur lesquelles vous avez travaillé pour sortir une Big Picture illustrant tous les services /features /composants qui y sont déployés.

J’ai récemment audité une infra Azure d’un de mes clients, ce dernier ne disposant d’aucun schéma /DAT, j’ai été amené à documenter son architecture Azure.

Pour ce faire, j’ai dû utiliser plusieurs Outils/Templates/Visio stencil… j’ai donc décidé de publier ce post pour partager ces ressources avec vous :).

 

Outils & Liens Utiles

Tous les liens /documentations /ressources utilisées pour documenter une Architecture Azure sont listés ci-dessous :

 

Enjoy, à bientôt,

#HK

Résultat de recherche d'images pour "azure private link"
Introduction

Les clients Azure ont de plus en plus besoin d’accéder à leurs données et services Cloud de manière privée et sécurisée.

Plusieurs Services Azure (offres PaaS et SaaS principalement) sont (par défaut) déployés avec des interfaces Publics. Eg Database Azure SQL ou Compte de Stockage Azure déployés avec des URL Publics/DNS Name routable sur Internet.

Microsoft avait introduit un service appelé « VNET Service Endpoint » (Points de terminaison) permettant d’associer un service Azure partagé (Shared) à un VNET privé.

Vous pouvez en effet sécuriser la connexion à un service Partagé tel qu’une base Azure SQL PaaS en utilisant les points de terminaison VNET, ces derniers maintiennent le trafic sur le réseau interne Microsoft et permettent de « Lock-down » la ressource PaaS sur votre réseau virtuel uniquement.

En revanche, les points de terminaison PaaS restent accessibles via une adresse IP publique et ne peuvent donc pas être atteints depuis votre réseau local/onPrem via un Peering privé ExpressRoute ou une Passerelle VPN Azure.

Pour rendre ses services PaaS et SaaS Publics accessibles de manière privée et sécurisée, Microsoft a introduit un nouveau service appelé « Azure Private Link » !

 

Azure Private Link : qu’est-ce que c’est ? 

Tant attendu, Azure Private Link (APL) est un service qui va vous permettre d’accéder à des services Azure tels que Azure Storage, SQL (Offres PaaS), des Services tiers (Marketplace Azure) ou encore des ressources Buildées par vous via une liaison privée/sécurisée et complètement déconnectée d’Internet.

Une fois configuré et intégré à votre VNET, Azure Private Link établit un lien privé via des Private Endpoints avec tous les services Azure partagés pris en charge (Azure SQL, Azure Storage…), ces derniers deviennent accessibles via une Adresse IP Privée/Locale faisant parti de votre Range IP, comme n’importe quelle ressource déployée et associée à un de vos VNET Azure.

Notez qu’Azure Private Link s’intègre également avec les Zones DNS Privées d’Azure.

Prenons l’exemple suivant : Architecture Hybride Azure avec liaison ER (Private Peering)

Azure présente une extension de votre Datacenter (OnPrem), ce dernier est interconnecté avec Azure via une liaison « ExpressRoute » en Private Peering.

Vous déployez une base de données Azure SQL, par défaut, ce service est accessible via une URL publique (Routable sur Internet). Azure Private Link permet de rendre cette ressource Publique (DB Azure SQL), privée en l’associant à votre VNET et en lui attribuant une adresse IP locale. Les utilisateurs OnPrem peuvent donc (via le lien Private Peering ExpressRoute) accéder à cette DB Azure SQL via son adresse IP Privée/Locale, la ressource sera visible et accessible comme n’importe quelle ressource déployée dans vos environnements locaux ou Cloud.

Cela réduit considérablement le risque lié à l’exposition des ressources Azure sur Internet, car tout le trafic passe à travers le réseau Interne de MS Azure (Azure Backbone Network).

Le Schéma suivant illustre le fonctionnement du service Azure Private Link :

Diagram showing the Private Link topology. Starting from services attached to Private Link, then linked and made available in the customer VNet through a Private Endpoint.

 

Vous pouvez aussi regarder la vidéo ci-dessous pour en savoir plus sur APL :

[Cliquez sur l’image pour visionner la vidéo]

 

Pourquoi utiliser Azure Private Link : Quels avantages ? Quels Use-Cases ?

L’utilisation d’Azure Private Link présente plusieurs avantages :

  • Configuration réseau simplifiée : la configuration et gestion des règles de filtrage réseau reste la même car tous les services Publics partagés (eg : Azure SQL Database) deviennent privés et sont accédées via leurs interfaces IP privées comme n’importe quelle ressource associée à votre VNET (même accès et connectivité que les VM Azure par exemple).

Vous pouvez utiliser Azure Private Link dans les scénarios suivants :

  • Si vous voulez établir une connexion privée avec les services PaaS Azure : comme mentionné précédemment, grâce à Azure Private Link, vous pouvez désormais accéder à des services partagés Multi-tenant tels que le Stockage Azure, Azure SQL de manière privée et sécurisée. Vous pouvez simplement créer un Private Endpoint dans votre VNET et le mapper sur votre ressource PaaS (votre compte de stockage Azure ou base de données SQL), APL attribue ensuite des adresses IP locales/privées à ces services PaaS et les rendent accessibles depuis votre réseau Azure (VNET) ou Local (OnPrem).
  • Si vous voulez Établir une connexion privée avec les services SaaS Azure : Plusieurs Partenaires de Microsoft offrent aujourd’hui leurs solutions sous forme de SaaS (Software-as-a-Service) à travers la Marketplace Azure. Ces solutions SaaS sont souvent accessibles que depuis Internet. Certains clients Azure souhaitent utiliser ces SaaS au sein de leurs réseaux privés comme s’elles étaient déployées au sein de leurs Datacenters. La possibilité de consommer les solutions SaaS à titre privé au sein du réseau du client est une demande courante. Avec Azure Private Link, la connectivité privée est aussi étendue aux partenaires Microsoft. Quand APL sera en GA, vous allez surement constater la disponibilité de plusieurs offres/solutions SaaS du Marketplace via un Azure Private Link : nous allons donc parler plutôt de Private SaaS.
  • Si vous voulez  établir une connexion privée avec vos services Azure (autres que PaaS et SaaS) : Le scope d’Azure Private Link ne se limite pas aux services/offres PaaS et SaaS d’Azure, vous pouvez en effet étendre APL aux autres Workloads comme par exemple des VMs Azure (faisant office de Web Server) ou des Azure WebApps placés derrière un Équilibreur de charge (Load Balancer) Standard. Le diagram suivant illustre une architecture avec et sans APL :

 

Before and after diagram, showing services traditionally exposed through public IPs vs exposed privately in the VNet through Private Link

 

Comme montré dans le schéma ci-dessus, avec Azure Private Link, vous pouvez déployer et placer des ressources Azure derrière un Load Balancer Standard, et configurer ce dernier pour permettre à vos utilisateurs faisant parti d’autres tenant AAD (ou abonnements) de donc depuis d’autres VNET d’atteindre sans avoir besoin d’exposer vos ressources sur Internet.

La création d’un Azure Private Link Service est nécessaire.

 

Composants d’Azure Private Link

Il faut bien noter qu’Azure Private Link fonctionne de la manière suivante :

  • Les Azure Private Endpoints sont utilisés pour rendre la communication privée avec les services PaaS/SaaS
  • Les Azure Private Link Services sont utilisés pour faire référence à vos ressources (VMs) placées derrière un Load Balancer Standard.

 

Services Azure pris en charge par Azure Private Link
Services Azure PaaS pris en charge 

Encore en Public Preview au moment de la rédaction de ce post, Azure Private Link prend uniquement en charge les services PaaS suivants :

  • Azure Storage
  • Azure SQL Database
  • Azure SQL Data Warehouse
  • Azure Data Lake Storage (Gen2)

 

Autres Services Azure pris en charge 
  • Services Azure placés derrière un Load Balancer Standard

 

Régions prenant en charge Azure Private Link

La Public Preview d’Azure Private Link prend uniquement en charge les régions Azure suivantes :

Type de service (Scénario) Services pris en charge Régions disponibles
Private Link pour vos services Azure Services derrière un Load Balancer Standard
  • West Central US
  • WestUS
  • South Central US
  • East US
  • North US
Private Link pour les services Azure PaaS Azure Storage
  • East US
  • West US
  • West Central US
Azure SQL Database
  • East US
  • West US
  • West Central US
Azure SQL Data Warehouse
  • West Central US
  • WestUS
  • South Central US
  • East US
  • North US
Azure Data Lake Storage Gen2
  • West Central US
  • WestUS
  • South Central US
  • East US
  • North US

Note importante : si des règles de sécurité/Compliance vous obligent à déployer des services Azure uniquement en France (Central /Sud) ou en Europe (Nord & Ouest), vous ne pouvez malheureusement activer/configurer/tester Azure Private Link. Eg : une Azure Policy qui force le déploiement des services Azure dans les Régions France et Europe uniquement vous empêchera de déployer APL. Voir avec les Cloud SecAdmin pour faire une exclusion sur un RG de test ou réaliser vos tests sur un Abonnement dédié au Sandbox/Dev/Test.

 

Limitations

Au moment de la rédaction du présent article, Azure Private Link (encore en Public Preview) présente les limitations suivantes :

Ressource/Object Limitation
Nombre de « Private Endpoints » par VNET 1000
Nombre de « Private Endpoints » par Abonnement 64000
Nombre de Service « Private Link » par Abonnement 32
Nombre de Configurations IP pour un Service « Private Link » 8 (Adresses IP NAT IP utilisées par PLS)
Nombre de « Private Endpoints » pour le même Service « Private Link » 1000

 

Pricing

Au moment de la rédaction de ce post, Azure Private Link est facturé de la manière suivante :

Service Liaison privée Le service Liaison privée n’est pas facturé
Point de terminaison privé 0,005 € par heure
Données entrantes (IN) traitées 0,005 € par Go
Données sortantes (OUT) traitées 0,005 € par Go

Notez que pendant toute la période « Public Preview » du service Azure Private Link, vous bénéficiez d’une remise de 50% sur les tarifs indiqués dans le tableau ci-dessus.

 

HowTo : créer un service Azure Private Link

Pour pouvoir créer un Private Link Azure, vous devez d’abord créer un Private endpoint. Azure Private Link s’appuie en effet sur le Private endpoint pour établir les différents canaux privés entre le VNET et les services Azure cibles (PaaS, SaaS, Ressources propriétaires).

Nous allons découvrir durant cette partie comment activer et configurer Azure Private Link.

Dans l’exemple suivant, le but est de sécuriser la communication entre une DB Azure SQL (PaaS) et une VM Azure (IaaS) depuis le réseau privé (VNET) Azure.

Notre service cible (DB Azure SQL) sera accessible de manière privée via son @IP privée/locale et ne sera donc plus visible depuis Internet.

Prérequis

Si vous ne disposez pas encore de compte Azure, vous pouvez en créer un gratuitement en cliquant ici.

 

Sandbox : Informations de configuration

Voici la configuration de notre LAB Azure :

  • 1 VNET :
    • Espace Adressage 10.10.0.0/16
    • Subnet 10.10.0.0/24
  • 1 VM Azure :
    • WS Server 2016 (Datacenter Edition)
    • Avec SSMS (SQL Server Management Studio) installé
    • IP : 10.10.0.4
  • [PaaS] Azure SQL Database :
    • Nom SQL Server : hklabdbserver.database.windows.net
    • Nom Database SQL : hklabdatabase
    • Zone DNS Privée Azure
      • Nom de la zone : hklabprivatelink.windows.database.net
      • Record A pour la base PaaS :
        • Hostname : hklabdbserver.hklabprivatelink.windows.database.net
        • IP Address (privée) : 10.10.0.5

 

Outils de déploiement

L’activation et configuration d’Azure Private Link peuvent être réalisées via différents tools (Azure Portal, Az PowerShell Module, Az CLI…).

Pour notre LAB, Azure CLI sera utilisé car c’est mon tool préféré (:D) mais aussi parce que je trouve que l’interaction avec Azure est 2 à 3 fois plus rapide par rapport à WS PS.

 

HowTo : créer un service Azure Private Link

Pour pouvoir créer et tester Azure Private Link, nous allons d’abord déployer notre infra de test, comprenant :

  • 1 VNET + 1 Subnet
  • 1 VM
  • 1 SQL Server-as-a-Service
  • 1 Database SQL Azure
  • 1 Zone DNS Privée Azure + 1 Record pour notre Azure DB Server
  • Le tout placé dans un Resource Group 

 

Pour ce faire, connectez-vous sur le Cloud Shell Azure et exécutez les commandes suivantes :

  • Note : vous pouvez changer les noms des objets et renseigner ceux qui vous conviennent le plus (eg : respecter une convention de nommage d’un env LAB Azure de votre société ou client).

 

#1 : Création du Ressource Groupe

Exécutez la commande suivante pour créer un groupe de ressource nommé « hk-lab-rg » au niveau de la région France Central :

#2 : Création du VNET et Subnet

Exécutez les commandes suivantes pour créer un nouveau VNET nommé « hk-lab-vnet » avec un subnet de /24 nommé « hk-lab-subnet » :

#3 : Création de la VM

Exécutez les commandes suivantes pour créer une nouvelle VM WS2019Datacenter nommé « hk-lab-vm« :

 

#4 : Création d’un nouveau Server Azure SQL (hklabdbserver) et une base de données de test (hklabdatabase)

Exécutez les commandes suivantes pour créer une nouveau Server Azure SQL :

az sql server create \
–name « hklabdbserver » \
–resource-group « hk-lab-rg » \
–location francecentral \
–admin-user « hksqladmin » \
–admin-password P@$$w0rd_2019!

Exécutez ensuite les commandes suivantes pour créer une nouvelle DB Azure SQL :

az sql db create \
–resource-group hk-lab-rg \
–server hklabdbserver \
–name hklabdatabase \
–edition GeneralPurpose \
–family Gen5 \
–capacity 1

 

#5  : Mettez à jour les stratégies Réseaux au niveau du Subnet « hk-lab-subnet »

Les stratégies réseaux et règles de filtrage (eg : règles NSG) ne prennent pas en charge les Private endpoints.

Le sous-réseau auquel nous allons associer les Ressources Private Link (via les Private endpoints) doit être configuré/mis à jour pour exclure les Privates Endpoints de toute règle réseau/filtrage définie.

Pour désactiver ces stratégies réseaux du subnet sur lequel vous allez créer et associer des Private endpoints, il suffit d’exécuter les commandes suivantes :

az network vnet subnet update \
–name hk-lab-subnet \
–resource-group hk-lab-rg \
–vnet-name hk-lab-vnet \
–disable-private-endpoint-network-policies true

 

Note importante : si vous créez votre Private endpoint via le Portail Azure (GUI mode), cette mise à jour des network policies est faite de manière automatique par l’assistant. Elle doit être réalisée à la main seulement quand vous déployer des private Endpoints via Windows PowerShell (Az Module) ou Azure CLI.

 

#6 : Création du Private Endpoint

Maintenant que les ressources requises pour notre LAB ont été créées et les stratégies réseaux ont été désactivées, nous allons créer et configurer Azure Private Link.

Pour ce faire, vous devez simplement créer un Private Endpoint car APL s’appuie en effet ce dernier pour faire communiquer des ressources comme les VMs Azure avec les ressources Private Link (de type Base PaaS Azure SQL ou Compte de stockage Azure).

Commencez donc par créer un Private endpoint en exécutant la commande Az CLI suivante

az network private-endpoint create \
–name hktestprivateendpoint \
–resource-group hk-lab-rg \
–vnet-name hk-lab-vnet \
–subnet hk-lab-subnet \
–private-connection-resource-id « /subscriptions/id/resourceGroups/hk-lab-rg/providers/Microsoft.Sql/servers/hklabdbserver »/ \
–group-ids hklabdbserver \
–connection-name hklabprivateendpointconnection

 

Tip : vous devez avoir l’ID de votre Az SQL Server (paramètre –private-connection-resource-id), pour l’obtenir, vous pouvez exécuter la commande suivante :

az sql server show -n hklabdbserver -g hk-lab-rg

 

#7 : Création de la Zone DNS privé Azure ainsi que le record pour la PaaS SQL Azure

Pour créer la zone DNS privée « hklabprivatelink.database.windows.net« , exécutez la commande suivante :

az network private-dns zone create –resource-group hk-lab-rg \
–name « hklabprivatelink.database.windows.net »

Créez ensuite le lien DNS privé, en exécutant la commande suivante :

az network private-dns link vnet create –resource-group hk-lab-rg \
–zone-name « hklabprivatelink.database.windows.net »\
–name hklabdnslink \
–virtual-network hk-lab-vnet \
–registration-enabled false

Nous allons maintenant déclarer/ajouter un record (A) et l’associer à notre serveur SQL Azure (hklabdbserver <> IP locale/privée : 10.10.0.5 car le 10.10.0.4 est attribuée à notre VM WS2016) en exécutant les deux commandes suivantes :

az network private-dns record-set a create –name hklabdbserver –zone-name hklabprivatelink.database.windows.net –resource-group hk-lab-rg

az network private-dns record-set a add-record –record-set-name hklabdbserver –zone-name hklabprivatelink.database.windows.net –resource-group hk-lab-rg -a 10.10.0.5

Et voilà le tour est joué :).

HowTo : Créer /Configurer Azure Private Link via PowerShell & Azure Portal

Pour créer et configurer Azure Private Link via PowerShell (Az Moduel), consultez cet article.

Pour créer et configurer Azure Private Link via le Portail Azure, consultez cet article.

 

Tester l’accès à votre service PaaS (SQL Server Azure) via son @IP locale

Nous allons maintenant tester la connectivité (privée) entre notre VM Azure (10.10.0.4) et notre Azure SQL Server (10.10.0.5), pour ce faire :

  • Connectez-vous via RDP sur la VM Azure (Click Connect pour récupérer le RDP File). Si vous n’avez pas attachée une Public IP à votre VM, vous pouvez toujours vous connecter en RDP via le service Azure Bastion. Pensez à utiliser l’URL « Preview » pour avoir l’option « Bastion : RDP|SSH » sur votre VM.
  • Une fois la session Windows ouverte, lancez l’invite de commande (CMD.exe) et faites un test nslookup avec le DNS name du serveur SQL Azure en exécutant la commande suivante : nslookup hklabdbserver.hklabprivatelink.database.windows.net
  • Comme montré dans la capture d’écran suivante, L’@IP retournée est 10.10.0.5 (IP locale)

  • Nous allons maintenant tester la communication via le port 1433 (SQL) sur l’@IP 10.10.0.5. Pour ce faire, lancez Windows PowerShell (en tant qu’Admin) et saisissez la commande suivante : Test-NetConnection -ComputerName 10.10.0.5 -Port 1433, le résultat retourné doit indiquer ‘True’, c’est qui veut dire que la communication entre votre VM et le service PaaS Azure SQL sur le port 1433 est OK via l’@IP locale (10.10.0.5)

  • Enfin, installez SQL Server Management Studio sur la VM Azure (10.10.0.4) et connectez-vous sur le serveur Azure SQL (hklabdbserver <> 10.10.0.5) à l’aide des credentials Admin SQL renseignés lors de la création du service Azure SQL

  • Comme montré dans la screenshot ci-dessous, la connexion sur le serveur Azure SQL a été réalisée avec succès, nous sommes bien connectés sur notre instance hklabdbserver via l’IP locale 10.10.0.5 :

 

S(ervice) L(evel) A(greement)

Une fois en GA (General Availability), Microsoft annonce une disponibilité trois 9 (99,9) du service Azure Private Link.

Source : https://azure.microsoft.com/fr-fr/pricing/details/private-link/

 

Azure Private Link : La Roadmap ?

L’équipe Azure Networking Corp annonce plusieurs New Features dans la Roadmap Azure Private Link, à savoir :

  • Disponibilité d’Azure Private Link dans de nouvelles Régions : Les régions France Central/Sud et Europe Nord/Ouest seront donc bientôt prises en charge (selon le PM Azure Networking)
  • Pris en charge de plusieurs nouveaux services PaaS : Azure Cosmos DB | Azure MySQL | Azure PostgreSQL | Azure MariaDB | Azure Application Service | Azure Key Vaul
  • Pris en charge de Nouveaux Services Partner (Service Tiers du Marketplace)

Quand il sera en GA, Azure Private Link prendra en charge une liste de services nettement plus importante.

Stay connected on : https://azure.microsoft.com/fr-fr/updates/?product=virtual-network

 

Lien Utile /Documenttion « Azure Private Link » 

La documentation officielle sur Azure Private Link est disponible depuis l’URL ci-dessous :

https://docs.microsoft.com/en-us/azure/private-link/

 

That’s All :).

A bientôt, #HK