Microsoft Azure: File Server sur le Cloud et VPN P2S

Microsoft Azure: File Server sur le Cloud et VPN P2S

Premier article sur le fameux Cloud de chez Microsoft : Azure !

Comme promis, je me suis enfin mis à tester l’offre gratuite du Cloud Azure après avoir bien testé Amazon AWS ! Aujourd’hui nous allons donc voir comment créer un réseau virtuel sur le Cloud, y installer un Fileserver, puis comment connecter un client Windows 10 à notre réseau virtuel via le service Azure Passerelle. Classique, mais efficace 😉

Avant de rentrer dans le vif du sujet, et comme à l’accoûtumée, voici un petit “c’est quoi Azure ?” directement pris du site de Microsoft :

Microsoft Azure est un ensemble sans cesse croissant de services cloud destinés à aider votre organisation à relever les défis auxquels elle est confrontée. Il vous permet de construire, de gérer et de déployer des applications sur un énorme réseau mondial en utilisant vos infrastructures et outils favoris.

Rien de nouveau sous le soleil donc, si vous avez un peu suivi mes articles sur AWS. Bien, on peut donc commencer !

I) Topologie réseau

Enfin, commencer, je vais d’abord vous résumer ce que l’on s’apprête à faire, histoire de ne pas s’emmêler les pinceaux par la suite !

Nous allons donc créer un premier réseau virtuel (NOTAMAX_LAN_01), dans lequel nous allons créer un sous-réseau nommé sobrement “subnet_01”, dans lequel nous installerons notre VM FS-01. Notre LAN “on-premise” sera connecté au travers d’un VPN IKEv2 et SSTP (SSL) avec une authentification par certificat. C’est peut être du chinois pour vous mais vous verrez au fur et à mesure de l’article que cela n’a rien de très compliqué 😉

Je sais très bien qu’il existe une plétore d’autres façons d’héberger/accéder à des fichiers présent sur le Cloud, mais l’idée de ce premier article est d’abord de se familiariser un peu avec l’interface du portail Azure et de partir sur quelque chose de connu. J’avais au départ voulu y héberger un ActiveDirectory avec serveur DNS et relier le tout via un VPN Site-à-Site mais étant donné que je n’ai qu’une Bbox-2 chez moi, et que celle-ci ne propose qu’un DynDNS payant (dyndns.org, et pas un seul autre) j’ai dû me résoudre à faire un P2S avec un “simple” FileServer 😅

Bref, assez de blabla ! Commençons directement.

II) Création du groupe de ressources

Après s’être inscrit avec le tutti quanti que cela implique, il convient de créer un groupe de ressources en premier lieu. Pour faire simple, imaginez cela comme un “conteneur” regroupant tout vos services Azure.

Ici rien de spécial, on choisi bien l’abonnement Essai gratuit puis on renseigne un nom et une région :

Ensuite nous pouvons créer des étiquettes, pour comme son nom l’indique “étiqueter” des services avec des noms plus familiers, mais pas réellement besoin ici, on clique donc sur Suivant et on valide le tout :

On clique donc sur Créer et on peut se rendre sur l’aperçu :


III) Création du réseau virtuel

Après avoir créé notre groupe de ressources, il faut à présent se rendre sur la page d’accueil et d’aller sur le service Réseaux virtuels :

Ici nous allons donc créer notre réseau virtuel qui hébergera notre Active Directory ainsi que d’autres machines virtuelles plus tard.

Ici j’ai donc choisi un réseau 172.16.0.0/16 pour être assez large au niveau des différents services dont je pourrais avoir besoin, même si c’est sûrement bien trop. Ensuite on créer un sous-réseau avec ce coup-ci 256 adresses, et c’est sur ce sous-réseau que l’on connectera nos machines virtuelles à l’avenir :

Une fois validé, tout est bon !

IV) Installation de la VM Windows Server 2019

Nous allons désormais installer notre VM et la rattacher à notre réseau virtuel, puis nous créerons la liaison VPN.

On se rend donc sur l’onglet Services puis Machines virtuelles et ici rien de sorcier, on choisi le nom de la VM, l’OS, un compte utilisateur avec mot de passe, une éventuelle HA, et l’ouverture ou non de certains ports directement sur Internet (ici nous n’en avons pas besoin, et nous pourrons gérer tout cela par la suite) :

Vient ensuite la gestion des disques, ici nous allons choisir le type de disque SSD Premium avec une taille de 1024Go par défaut :

Concernant la mise en réseau rien de spécial ici non plus, nous ne souhaitons toujours pas exposer certains ports directement sur Internet, et concernant le groupe de sécurité celui-ci sera modifiable par la suite au besoin (même principe que pour AWS), on peut donc cliquer sur Suivant.

Ici nous ne devons pas non plus modifier les options par défaut, mais en production l’activation de la sauvegarde peut être intéressante :

On arrive presque à la fin, courage ! Ici toujours la même chose, nous sélectionnons bien Génération 1 pour le type de machine virtuelle, et le reste par défaut. Les extensions peuvent être utiles éventuellement, elles permettent par exemple d’installer un Antivirus, un logiciel de sauvegarde ou autre directement après l’installation, mais encore une fois, pas réellement besoin pour ce lab :

On retrouve nos fameuses étiquettes, que je n’utilise pas ici donc nous pouvons passer :

La vérification et le démarrage se lancent désormais, il nous suffit de patienter un petit moment et le tour est joué !

*Petite note: il se peut que lors de la validation vous obteniez une erreur, il vous suffit de revenir en arrière et ré-essayer, l’erreur disparaîtra. Je ne sais pas pourquoi mais je l’ai obtenue deux fois, ce serait dû à un soucis d’abonnement, c’est assez étrange mais ma foi tout fonctionne donc soit.

Une fois notre déploiement terminé, nous pouvons aller vérifier que tout est ok directement sur le panel web :

Bien, maintenant que notre VM est bien configurée et fonctionnelle, nous allons pouvoir nous atteler à l’installation du VPN. Bien que nous soyons dans un environnement de lab, je préfère ne pas assigner d’IP publique à la VM pour permettre l’accès RDP depuis Internet… on va donc devoir encore un peu patienter avant de s’y connecter pour créer nos partages réseaux.

V) Configuration de la Passerelle VPN

Bien, on arrive doucement à la fin de la mise en place de notre infrastructure. Ici on retourne sur l’onglet Services puis on accède à Passerelles de réseau virtuel, permettant donc de relier des sites on-premises aux réseaux virtuels de chez Azure ou encore de faire du P2S, c’est-à-dire des liaisons Points to Site, soit client à site (ce que nous allons faire ici ) :

On choisi donc un nom, puis notre réseau virtuel, on choisi aussi un nom pour l’adresse IP publique que nous allons créer, et on peut cliquer sur Suivant (pas la peine de s’attarder sur les autres options, certaines me sont d’ailleurs encore inconnues à l’heure actuelle ):

Au niveau des étiquettes de services ça ne change pas, nous n’en utilisons pas, Suivant donc. Une fois fait, la validation se met en place puis la création du service peut démarrer !

Une fois validé, on se rend sur l’onglet Configuration de point à site de notre passerelle fraîchement créée et nous cliquons sur Configurer maintenant pour créer notre liaison VPN :

On choisi donc le pool d’adresses utilisé par le VPN, puis le type de tunnel (IKEv2 et SSTP SSL dans notre cas).

Comme type d’authentification nous allons utiliser les Certificats Azure, et en générer un puis l’exporter via Powershell, de cette manière :

Pour l’exporter nous ouvrons donc une invite Powershell et nous exécutons une première commande permettant de générer le certificat racine (root) :

$cert = New-SelfSignedCertificate -Type Custom -KeySpec Signature `
-Subject "CN=NotamaxRoot" -KeyExportPolicy Exportable `
-HashAlgorithm sha256 -KeyLength 2048 `
-CertStoreLocation "Cert:\CurrentUser\My" -KeyUsageProperty Sign -KeyUsage CertSign

Nous créons donc une variable nommée cert qui va correspondre à la création d’un nouveau certificat auto-signé avec comme CN “NotamaxRoot”, en permettant son exportation, et en utilisant comme hash une clé SHA256 de 2048, puis nous le sauvegardons/installons automatiquement dans le dossier Certificates-Current User\Personal\Certificates. Une fois fait, nous allons créer le certificat client qui devra être installé sur les postes clients qui auront l’accès VPN :

New-SelfSignedCertificate -Type Custom -DnsName NotamaxClient -KeySpec Signature `
-Subject "CN=NotamaxClient" -KeyExportPolicy Exportable `
-HashAlgorithm sha256 -KeyLength 2048 `
-CertStoreLocation "Cert:\CurrentUser\My" `
-Signer $cert -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.2")

Ici ce sera globalement la même chose, je ne m’attarderai pas dessus. Une fois ce second certificat généré, nous allons nous rendre dans le certmgr de Windows 10, puis nous irons dans Personnel, Certificats :

Tout d’abord il convient d’exporter en premier le certificat racine ; c’est lui que nous allons copier sur le portail Azure (voir plus bas). On fait donc un clic droit, puis Toutes les tâches, Exporter et on suit le menu contextuel. Il faudra simplement bien veiller à ne pas exporter la clé privée, et à choisir l’encodage en Base64 pour que l’on puisse l’ouvrir par la suite et extraire la clé facilement. Une fois fait, on peut donc faire un clic droit sur notre certificat pour le modifier, on prend la clé contenue à l’intérieur, et on vient la coller sur le portail Azure :

Ensuite il ne nous reste plus qu’à exporter cette fois le certificat client, avec la clé privée puis à double-cliquer dessus pour l’installer sur le PC qui accueillera le VPN. Celui sur lequel le certificat a été généré n’en a pas besoin, il est directement installé lors de la création.

Bien, une fois le certificat installé, on peu Télécharger le client VPN toujours sur le portail Azure. C’est une archive ZIP contenant donc un exécutable 32/64bits que vous devrez installer. Une fois fait, il nous suffit de cliquer sur Connecter et d’accepter le tout, puis le tour est joué !

Tout fonctionne ! On peut donc poursuivre.

VI) Installation du FileServer

Bien, étant donné que désormais notre tunnel VPN est bien fonctionnel, nous allons pouvoir nous y connecter pour réaliser du RDP sur notre serveur FS-01, plutôt que de directement l’exposer sur Internet comme dit en début d’article.

On est désormais connecté en RDP sur notre serveur, niquel ! Il faut simplement configurer une IP statique à ce dernier, et pour cela on doit se rendre à nouveau sur le portail Azure…

On se rend donc sur l’interface réseau directement, ici au nom de fs-01916 puis sur Configuration IP, et enfin on clique sur ipconfig1 :

Ici nous ne touchons pas à l’adresse IP publique, on se contente de switcher de Dynamique à Statique l’IP privée et on définie celle-ci.

Bien, on patiente durant le redémarrage de la VM puis nous nous reconnecterons en RDP pour vérifier que l’IP a bien changée et nous pourrons installer nos partages réseaux.

Ici je ne vais pas faire de partages réseaux très complexes, surtout que nous n’avons (malheureusement) pas d’AD mis en place. Je vais donc simplement créer un premier share et si tout est ok, nous pourrons en rester là 😉

Comme on peut le voir, tout est bon ! J’ai donc dû mettre l’IP du serveur et non son nom DNS étant donné que nous n’avons pas de serveur DNS dans ce réseau, mais soit, le résultat est le même ; on arrive bien à se connecter au partage et à ouvrir/modifier/enregistrer des fichiers et documents, c’est donc une réussite !

VII) Conclusion

Ceci conclut donc ce premier article sur le fameux cloud de Microsoft. Comme dit en début d’article, j’aurais préféré réaliser du VPN Site-à-Site avec un Active Directory. J’avais d’ailleurs testé d’en installer un via le même VPN que dans cet article, donc en P2S et j’y étais arrivé mais le soucis se présentait lors de l’activation du VPN avant le login au domaine… obligé de switcher d’utilisateur, ce qui est assez embêtant. Puis en général, en entreprise, on préfèrera toujours du Site-à-Site pour ne pas devoir installer manuellement les clients VPN sur chaque poste…

M’enfin soit, ce premier article nous aura permis de découvrir le portail Azure, découvrir la création de réseau virtuel dans le Cloud ainsi que son interconnexion via le service de Passerelle VPN. Pas mal pour un début !

Comme pour la série sur AWS, préparez-vous à voir arriver encore quelques articles sur Azure durant les prochains jours 😉

Bonne journée/soirée à vous !

Laisser un commentaire

You May Have Missed