Archives de juin, 2019

 

La configuration de la solution LAPS est réalisée via PowerShell (PowerShell V2 minimum), cette solution possède un module dédié nommé « AdmPwd.PS ». Ce module s’installe avec LAPS en sélectionnant l’option « PowerShell Module ». Avant l’installation et le déploiement de la solution il est préférable de se familiariser avec ce module.

Avant chaque opération LAPS via PowerShell, vous devez d’abord importer le module PowerShell « AdmPwd.PS » en exécutant l’une des deux commandes suivantes :

Ci-dessous vous trouverez la liste des Cmd-Lets inclus dans le module PowerShell.

Import-Module AdmPwd.PS

IpMo AdmPwd.PS

Vous pouvez ensuite exécuter la commande suivante pour obtenir la liste complète des Cmd-lets fournis avec le module LAPS PS « AdmPwd.PS » :

Get-Command -Module AdmPwd.PS

Comme illustré dans la capture d’écran ci-dessous, le module « AdmPwd.PS » dispose de plusieurs Cmd-lets, celles-ci sont détaillées dans le tableau ci-dessous :

Cmd-Let /Explication
Find-AdmPwdExtendedRights

Permet d’obtenir les groupes /comptes par OU ayant la permission de consulter les mots de passe.

Get-AdmPwdPassword

Permet d’obtenir le mot de passe d’une machine.

Reset-AdmPwdPassword

Permet de modifier la date d’expiration du mot de passe.

Set-AdmPwdAuditing

Permet d’activer l’audit d’accès au mot de passe d’une machine. Créer l’événement 4662 sera consigné dans le journal des événements de sécurité des contrôleurs de domaine.

Set-AdmPwdComputerSelfPermission

Permet de créer sur les OU dans Active Directory les délégations de contrôles pour les comptes ordinateurs. Ceux-ci peuvent modifier les attributs LAPS afin de renseigner le mot de passe.

Set-AdmPwdReadPasswordPermission

Permet de créer sur les OU dans Active Directory les délégations de contrôles pour les groupes/utilisateurs. Ceux-ci peuvent afficher le mot de passe.

Set-AdmPwdResetPasswordPermission

Permet de créer sur les OU dans Active Directory les délégations de contrôles pour les groupes /utilisateurs. Ceux-ci peuvent modifier la date d’expiration afin d forcer le changement du mot de passe.

Update-AdmPwdADSchema

Permet de modifier le schéma AD en ajoutant les objets de type ordinateur les attributs suivants :

ms-MCS-AdmPwd

ms-Mcs-AdmPwdExpirationTime

 

Ceci est un extrait de l’eBook « Microsoft LAPS – Déploiement et Configuration en Entreprise« .

L’eBook est disponible ici.

N’hésitez pas à consulter la table des matières pour en savoir plus.

 

#HK

Microsoft a dévoilé pour la première fois sa nouvelle « Command Line Desktop App » pour Windows baptisée « Windows Terminal » au Microsoft Build 2019. L’équipe Windows avait annoncé qu’il s’agit d’une App Open source qui offre un emplacement central où les Développeurs/Scripteurs peuvent accéder à la ligne de commande traditionnelle, tels que la Command Prompt, Windows PowerShell, PowerShell Core ou encore au sous-système Windows pour Linux (WSL : Windows SubSytem for Linux), en version 1 mais aussi WSLv2.

Quelques améliorations verront le jour pour le nouveau Terminal Windows, notamment :

  • Prise en charge de plusieurs onglets (Multiple Tabs)
  • Moteur de rendu « Text » basé sur DirectWrite / DirectX accéléré par le GPU
  • Paramètres de configuration avancés

 

Bien que les développeurs pouvaient compiler et utiliser Windows Terminal à partir du code disponible sur GitHub, Microsoft propose désormais un « Installer » via son Windows Store.

 

Télécharger Terminal Windows App

La nouvelle App « Windows Terminal » pour Windows 10 peut être téléchargée depuis l’URL suivante :

https://www.microsoft.com/en-us/p/windows-terminal-preview/9n0dx20hk701

Vous serez automatiquement redirigé vers Windows Store pour télécharger l’App :

Une fois installée, cliquez sur « Lancer » pour démarrer une nouvelle instance Windows Terminal :

Notez qu’il existe tout de même certains prérequis, notamment la version de Windows 10 sur lequel vous souhaitez installer le nouveau Windows Terminal.

Pensez à Updater votre OS avant l’install de cette nouvelle App.

 

Lancement de Windows Terminal (Preview)

Une fois installée, la nouvelle (Preview) App « Windows Terminal » est accessible depuis Windows Store ou le Menu Démarré de votre machine Windows 10

Exécutez la nouvelle App Windows Terminal and Enjoy 🙂

Personnalisez l’interface « Windows Terminal »

Windows Terminal est fourni avec plusieurs thèmes et permet une personnalisation complète de l’interface.

La personnalisation consiste à modifier un fichier JSON (profiles.json) pour accéder à toutes les options de personnalisation (e.g : modification l’image d’arrière-plan…etc)

Microsoft fournit quelques instructions intéressantes concernant la partie personnalisation du Windows Terminal, je vous invite à consulter ce post pour en savoir plus.

 

Ce qu’il faut retenir

L’App Windows Terminal pour Windows 10 est encore en « Preview », Microsoft promet plusieurs améliorations/introduction de New Features, donc restez connectés et suivez les évolutions depuis la Page GitHub dédiée à Windows Terminal mais aussi et surtout depuis le DevBlog Windows 

 

Windows Terminal in Action 

Je vous invite à regarder la Vidéo Demo ci-dessous, réalisée par l’équipe « Microsoft Windows Developper »:

 

Participez à l’évolution/amélioration du nouveau Windows Terminal, Partagez votre Feedback !

N’hésitez pas à partager votre avis/feedback avec l’équipe Windows Developper ainsi que la communauté MS pour participer à l’évolution/amélioration de cette powerful App.

Vous pouvez contribuer depuis le repo GitHub dédié au nouveau Windows Terminal > Onglet « Issues » voir URL suivante :

https://github.com/Microsoft/Terminal

 

 

A propos de cet eBook

Ce livre gratuit vous présente toutes les composantes critiques du modèle de gouvernance global Azure (Tags, Policy, Convention de nommage, Locks)

Il décrit en détails chaque composant/service, et détaille les bonnes pratiques et limitations relatives à chaque composant.
De plus, vous apprenez à travers ce free ebook toutes les techniques vous permettant de concevoir et implémenter votre model de Gouvernance, via Le Portail Azure mais aussi via l’interface « Cross-Platform » Az CLI et Windows PowerShell (utilisation du nouveu module PS « Az »).

Note : il s’agit de la première Edition de l’eBook « Azure Governance ». La seconde Edition comprendra les autres composants du modèle de Governance, à savoir « Azure RBAC » | « Azure Automation » | « Azure Security Center » | « Azure ResourceGroup-as-a-Service »

Publics concernés par cet eBook

Ce guide pas à pas peut intéresser plusieurs populations IT :

  • DSI /IT Manager /Cloud Program Manager
  • RSSI /Adjoint RSSI /Responsable Sécurité Cloud
  • Consultant /Architecte Azure /Architecte Solutions Cloud
  • Consultant Sécurité/Cyber /Consultant Sécurité Cloud
  • Administrateur /Ingénieur Cloud ou Sécurité
  • Cloud Enthusiast 😊
  • Toute personne souhaitant étudier, concevoir et implémenter un modèle de gouvernance Azure.

 

Téléchargez l’eBook

L’eBook est disponible en téléchargement gratuit sur BecomeITexpert.com, cliquez sur l’image ci-après pour en savoir plus :

 

Enfin, ce livre gratuit est organisé en 4 Chapitres. Je vous invite à consulter la table des matières pour en savoir plus.

Bonne lecture à tous :).

A bientôt,

#HK

 

Introduction

Avec son offre « Azure VM », Microsoft offre à ses clients la possibilité de déployer des infrastructures IaaS (Infrastructure-as-aService) sous Windows Server/Client ou Linux.

Par défaut :

  • Toute VM Windows (Client ou Server) déployée est exposée à Internet et est accessible via le protocole RDP (Remote Desktop Protocol : Port 3389.
  • Toute VM Linux déployée est exposée à Internet et est accessible via le protocole SSH (Secure SHell) : Port 22

 

En effet, lors de la création d’une nouvelle VM Azure (Windows ou Linux), l’assistant Azure vous propose la création d’une interface (IP) Publique pour permettre l’accès à votre VM (via RDP ou SSH) depuis Internet.

Cela vous expose à un risque important car vos VMs écoutent sur des ports (22/SSH et 3389/RDP) considérés étant vulnérables et très ciblés par les Hacker. Sans parler des Bots qui scannent en permanence les réseaux IP des Cloud Providers (tels que MS, AWS, GCP..etc) et essayent de Brute-forcer les accès SSH/RDP sur toute VM écoutant sur ces ports.

Pour réduire ce risque, certaines sociétés exposent seulement une VM (aka Jumpbox) de rebond utilisée pour atteindre les autres VMs en Back-end. Or, ce dernier devient donc aussi vulnérable car écoute toujours sur les mêmes ports (SSH/RDP), en outre, cet environnement Jumpbox est rarement « Hardené » et restreint (IP filtering, OS Hardening, AppLocker, Real-tim monitoring…etc)

D’autres sociétés ayant un niveau de sécurité plus sérieux, construisent un « vrai » environnement Bastion à base de RDS (Remote Desktop Services), comprenant une Gateway RDS pour exposer uniquement le protocole SSL/TLS (HTTPS) et encapsuler le protocole RDP over HTTPS.

Pour construire un environnement Bastion basé sur RDS, plusieurs services de rôles (et plusieurs VMs) doivent être déployées et configurées.

L’infra Bastion Azure (IaaS) peut comporter jusqu’à 6 ou 7 VMs (coût assez important), de plus, cette infrastructure devenant le point d’entrée aux infras IaaS Azure, doit être sécurisée, monitorée en permanence, backupée….etc donc un effort de gestion et maintenance non négligeable pour une société souhaitant s’offrir ce niveau de sécurité.

Enfin, les sociétés ayant plus d’exigences Sécu, n’exposent aucune VM sur Internet, même s’il s’agit d’une VM RD Gateway avec de l’HTTPS only, et optent pour une solution « Privée » qu’est la mise en place d’un VPN Point-toSite ou P2S (si l’équipe Admin Cloud ne comporte pas plus de deux ou trois personnes) ou VPN Site-toSite (ou S2S) s’elles souhaitent interconnecter le réseau local (ou un réseau Admin Local spécifique) avec leur VNET Azure.

  • Note : les deux VPN modes sont sécurisés
    • VPN S2S : IPSec /IKEv2
    • VPN P2S : OpenVPN ou SSTP « SSL/TLS based-authentification à base de certificat »

 

Ce 18 Juin 2019, l’équipe Azure Corp a annoncé la disponibilité d’un nouveau service de sécurité appelé « Azure Bastion« .

Ce service peut remplacer toutes les solutions citées ci-haut, et vous allez vite comprendre pourquoi :).

 

Azure Bastion : qu’est-ce que c’est ?

Azure Bastion est un service PaaS (Platform-as-aService) entièrement géré et maintenu par Microsoft (Sécurisation, Patch Management….), il fournit un accès RDP et SSH sécurisé à vos VMs Azure (Windows & Linux) directement via le portail Azure.

Azure Bastion est déployé/associé au niveau de chaque réseau virtuel (VNet) Azure et prend en charge toutes les VMs faisant partie du VNET.

Vos VMs ne sont jamais exposées sur Internet (pas d’@IP Publique), seul le service Azure Bastion est exposé et est accessible via HTTPS (via le Portail Azure).

Ce service peut remplacer votre infrastructure Bastion RDS traditionnelle, vous pouvez ainsi réduire le coût lié à l’infra VM Azure (plusieurs VMs > plusieurs centaines voire des milliers d’euros /mois, selon le sizing des VMs déployées) et réduire vos efforts de gestion, sécurisation, maintenance, backup…. (passage du mode IaaS au PaaS).

 

Azure Bastion est encore en « Public Preview », et est disponible uniquement pour les Régions Azure suivantes :

  • West US
  • East US
  • West Europe
  • South Central US
  • Australia East
  • Japan East

 

Azure Bastion : Big Picture

Le schéma suivant illustre l’accès RDP/SSH via Azure Bastion

source : Blog MS Azure

Pré-requis

Pour pouvoir déployer le service Azure Bastion, vous devez vérifier les deux prérequis suivants :

  • Disposer d’un compte Azure, vous pouvez en créer-un gratuitement ici.
    • Note : Vous bénéficiez de 170€ de Crédit pour tout nouveau compte Azure créé.
  • Enregistrer la fonctionnalité « AllowBastionHost » du fournisseur de ressources « Microsoft.Network » au niveau de votre abonnement, et ce en exécutant les commandes PS suivantes.
    • Note : les Commandes PS ci-dessous peuvent être exécutées depuis une instance PS locale ou directement depuis le Cloud Shell.

 

Tip : si votre compte Azure est associé à plusieurs abonnements, commencez par sélectionner celui pour lequel vous souhaitez enregistrer le service Azure Bastion (AllowBastionHost Feature), exécutez les commandes suivantes :

Maintenant que vous avez sélectionné votre abonnement, commencez par enregistrer la fonctionnalité « AllowBastionHost » en exécutant la commande suivante :

Register-AzureRmProviderFeature -FeatureName AllowBastionHost -ProviderNamespace Microsoft.Network

Exécutez ensuite la commande PS suivante pour enregistrer à nouveau votre abonnement avec le Provider NameSpace « Microsoft.Network » :

Register-AzureRmResourceProvider -ProviderNamespace Microsoft.Network

Enfin, exécutez la commande PS suivante pour vérifier que la Feature « AllowBastionHost » est bien enregistrée au niveau de votre abonnement :

Get-AzureRmProviderFeature -ProviderNamespace Microsoft.Network

Tip : La vérification de l’inscription/enregistrement du fournisseur de ressource ‘Microsoft.Network’ peut également être réalisée depuis le Portail Azure, en sélectionnant votre abonnement et cliquant sur le Blade ‘Resources providers’, voir capture d’écran ci-dessous :

Tous les prérequis ont été mis en place, maintenant nous allons découvrir comment déployer le service « Azure Bastion » et commencer à exploiter cette Amazing Feature :).

 

Méthodes de déploiement du Bastion Azure

Il existe deux méthodes de déploiement d’Azure Bastion :

  • Déploiement depuis la Marketplace Azure
  • Déploiement depuis les paramètres d’une VM Azure

 

HowTo : déployer Azure Bastion
Déployer un Bastion Azure depuis la Marketplace

Pour déployer le service Azure Bastion depuis la Marketplace, suivez les instructions suivantes :

  • Connectez-vous sur le Portail Azure Preview, il est important d’utiliser ce lien plutôt que l’URL standard (https://portal.azure.com)
  • Cliquez sur ‘Create a resource’
  • Saisissez le mot ‘Bastion’ depuis la zone de recherche et sélectionnez ensuite ‘Bastion (preview)’ :

  • Cliquez sur ‘Create’ pour continuer :

  • Maintenant, sélectionnez/remplissez les informations suivantes et cliquez ensuite sur ‘Review + Create’.
    • Abonnement (Subscription)
    • Groupe de ressource (Resource Group)
    • Nom de l’instance Bastion Host Azure
    • Région de l’instance (sélectionnez l’une des 6 Régions prenant en charge Azure Bastion, voir la liste ci-haut)
    • Réseau Virtuel Azure (Virtual NETwork Azure) dans lequel le sous-réseau du Bastion Azure sera créé
    • Sous-réseau (Subnet) du Bastion Azure
      • Note importante : le Subnet qui sera dédié au Host Azure Bastion doit avoir les caractéristiques suivantes :
        • Doit avoir un Net(work)Mask ‘/27’
        • Doit être nommé ‘AzureBastionSubnet’
    • Nom de l’adresse IP Publique du Bastion vu qu’il sera exposé sur Internet (flux HTTPS Only !)
      • Note : l’@IP Publique qui sera attribuée au Bastion Host Azure sera statique, il s’agit d’un choix défini par défaut par Azure (non modifiable !)

  • Le déploiement du service Azure Bastion démarre…

  • Une fois déployé, le service Azure Bastion apparaît désormais dans le Groupe de Ressource spécifié lors du déploiement du Service Bastion Azure :

  • Enfin, vous pouvez cliquer votre service Bastion pour afficher ses propriétés :

Déployer un Bastion Azure depuis les paramètres d’une VM Azure

Pour déployer/activer le service Azure Bastion depuis les Paramètres d’une VM Azure, suivez les instructions suivantes :

  • Connectez-vous sur le Portail Azure Preview, il est important d’utiliser ce Lien plutôt que l’URL standard (https://portal.azure.com)
  • Depuis le Blade « Toutes les ressources » ou « Virtual Machines » si vous l’avez « Favorisé », localisez et sélectionnez une VM Azure (Linux ou Windows)
  • Cliquez sur « Connect » et cliquez ensuite sur « BASTION« 
  • Si le service Bastion n’a jamais été déployé depuis la Marketplace comme montré précédemment, le bouton suivant (Use Bastion) s’affiche :

  • Lorsque vous cliquez sur ce bouton, l’assistant de création du Bastion Host suivant s’affiche, vous êtes invité à renseigner les mêmes informations que celles demandées lors de la création du service Bastion depuis la Marketplace :

 

Note : si vous essayez d’activer Azure Bastion au niveau d’un VNET déployé sur une Région autres que celles (les 6 Régions) listées ci-haut, le message suivant vous est retourné :

 

HowTo : Se connecter aux VMs Azure via Azure Bastion

Pour se connecter à vos VMs Azure via Azure Bastion, rien de plus simple :

  • Sélectionnez votre VM Azure,et cliquez sur « Connect« 
  • Depuis la fenêtre qui s’affiche, cliquez sur « BASTION » et remplissez les informations de connexion/authentification :
  • Dans l’exemple suivant, nous allons nous connecter (via RDP) à notre VM Azure Windows nommée « hkdemowsvm01« 

  • Cette fois-ci, je me connecte en SSH à une VM Azure Linux « hkdemolinuxvm01 » :

Bien évidemment, les deux VMs (Windows & Linux) utilisées dans les exemples précédents ne sont pas exposées à Internet et ne disposent donc d’aucune Interface IP Publique :

hkdemowsvm01

hkdemolinuxvm01

 

HowTo : Copier/Coller du Texte

Seul le Clipboard (Copier/Coller) du Texte est autorisé à travers le service Azure Bastion (pour l’instant ^_^).

Pour les navigateurs Web prenant en charge l’accès avancé à l’API Presse-papiers, vous pouvez copier et coller du texte entre votre Device/PC local et la session distante (VM Azure cible) de la même manière que vous copiez et collez entre des applications hébergées sur une seule et même machine (locale).

Pour les autres navigateurs, vous pouvez utiliser la palette d’outils d’accès au presse-papiers Bastion.

Lors de la première connexion RDP ou SSH via Azure Bastion, vous serez invité à autoriser le Clipboard depuis votre Navigateur Web, le message suivant est affiché, et il suffit de cliquer sur « Allow » pour autoriser le Clipboard :

Comment ça marche ?

Une fois connecté (via RDP ou SSH) à une VM Azure, cliquez sur les deux Flèches situées à gauche de la fenêtre :

Copiez ensuite un texte depuis votre machine locale, notez qu’il est automatiquement ajouté à la boite de dialogue du Bastion Azure, voir capture d’écran ci-dessous :

Enfin, collez votre texte depuis la session distance Azure Bastion :

Azure Bastion : Limitations

Azure Bastion est déployé et associé au niveau Azure VNET, vous devez le déployer pour chaque VNET présent au sein de votre abonnement.

La prise en charge du VNET Peering n’est pas encore pris en charge, et Microsoft ne sait pas (pour l’instant) répondre à la question.

 

Conclusion 

Au moment de l’écriture de ce post, Azure Bastion est encore en « Public Preview », vous aurez compris : à ne pas déployer sur vos environnements Azure de Production.

Il présente encore quelques bugs et problèmes de stabilité, que j’ai d’ailleurs remontés à l’équipe Azure Corp.

Selon les infos communiquées par MS (NDA Comm), il sera GA (Generally Available) dans quelques mois.

Ce service Bastion pourra remplacer vos infrastructures Bastion de type RDS/RD Gateway (avec ou sans RD Web Access Portal). Vous passerez donc d’un mode IaaS (Infra RDS exécutée sur de plusieurs VMs Azure : coût important + effort de gestion) à une plateforme Bastion PaaS (Platform-as-a-Service) fully-managed par Microsoft, ce mode PaaS présente plusieurs avantages, à savoir : une plateforme always UpToDate et plus sécurisée.

 

Voilà :).

#HK

 

Introduction

Azure Resource Explorer est un outil Web développé par Microsoft.

Il s’agit d’un projet « Open-Source », hébergé sur Github et disponible depuis l’URL suivante :

https://github.com/projectkudu/AzureResourceExplorer

 

Azure Resource Explorer (ARE) est un outil Web puissant qui vous permet de :

  • Obtenir la documentation API complète
  • Découvrir les API ARM (Azure Resource Management)
  • Faire des appels API directement sur vos Abonnements (Subscriptions) Azure

 

Il vous permet de lister toutes les ressources déjà créées et hébergées dans vos Abonnement Azure, comprendre comment celles-ci sont structurées et afficher toutes les propriétés dont elles disposent.

Azure Resource Explorer a été principalement conçu pour l’audit et gestion (modification) des Applis Web Azure (Az WebApps), il ne permet pas la modification des autres services Azure, à l’exception des R(esource) G(roups).

URL Azure Resource Explorer

Azure Resource Explorer est accessible depuis l’URL suivante :

https://resources.azure.com

Connectez-vous à cet URL et authentifiez-vous comme vous avez l’habitude de le faire sur le Portail Azure 

Une fois connecté, Azure Resource Explorer vous affiche l’arborescence suivante (volet gauche).

Deux nœuds parents sont affichés depuis ce volet :

  • Providers : plus précisément, la liste des Resources Providers (ou fournisseurs de ressources) Azure utilisés dans votre ou vos abonnements Azure
  • Subscriptions : la liste des abonnements associés au compte Azure utilisé lors de la phase Sign-in (Authentification).

 

Vous pouvez développer « subscriptions » et lister tous les Groupes de ressources (ResourceGroups) qui sont disponibles depuis l’abonnement Azure sélectionné.

Vous pouvez ensuite parcourir ces RG pour descendre jusqu’aux ressources qui y sont hébergées :

 

HowTo : utiliser Azure Resource Explorer

Pour afficher les propriétés d’une ressource Azure, il suffit de la localiser et la sélectionner depuis le volet gauche. Dans l’exemple suivant, je vais sélectionner mon groupe de ressource « hk-prod-01 » :

Cette fois-ci je vais sélectionner « resources » pour afficher les propriétés des ressources placées dans mon RG « hk-prod-01 » :

Pour chaque appel API (GET), vous noterez l’URI affichée automatiquement dans la barre d’adresse à côté du bouton « GET » > onglet Data (GET, PUT)

Si vous sélectionnez un Groupe de ressource depuis l’arborescence du volet gauche, vous allez constater l’apparition des options suivantes depuis l’onglet « Actions (POST, DELETE) :

  • Delete : permet de supprimer le groupe de ressource sélectionné
  • exportTemplate : permet de générer un template (ARM) à partir du groupe de ressource sélectionné
  • moveResources : permet de déplacer les ressources d’un groupe de ressource à un autre

 

Dans l’exemple suivant, nous allons faire un Move de la ressource « VM\hk-ad-01 » hébergée dans le RG source « hk-prod-01 » vers « hk-prod-02 », notez qu’il faut d’abord noter les ID de chaque objet Azure (RG et Ressource à déplacer) pour la renseigner dans la requête du ARE :

 

 

Pour résumer, ARE vous permet non seulement d’afficher les API Azure R(esource) M(anager), mais aussi de les exécuter dans votre propre Abonnement directement à partir d’un simple Navigateur Web.

Par exemple, vous pouvez l’utiliser pour lister et modifier vos Web Apps/Sites Azure existantes, ou en créer des nouvelles.

Tout se fait directement au niveau JSON, vous visualisez et contrôlez donc toutes les opérations en temps réel.

Azure Resource Explorer : In Action

Une petite vidéo réalisée par un des développeurs d’Azure Resource Explorer est disponible ci-dessous :

 

 

N’hésitez pas à faire le tour de l’outil, pratiquer et manipuler les différentes options pour découvrir la puissante de l’outil.

Si vous familier avec l’outil Postman (outil de développement/test d’API REST), eh bien ARE est un peu comme Postman pour Azure.

 

A bientôt,

#HK o_O