Mise en place de la double authentification (MFA) dans une architecture Bureau à distance (RDS)

L'authentification MFA est un processus permettant d'ajouter une identification supplémentaire lors de la connexion des utilisateurs.
Cela améliore donc la sécurité en réduisant le risque de compromission des mots de passe.

L'identification supplémentaire MFA peut être de différentes formes : SMS, empreinte digitale, périphérique dédié etc…

Dans ce guide ne cera évoqué que l'utilisation de l'application mobile Microsoft Authenticator lors de l'accès au bureau à distance.

Diagramme de l'architecture

RDS MFA Diagram

Prérequis

Licences

Comme d'habitude chez Microsoft rien de très clair au niveau du mode de licensing, mais il semble que l'on ait besoin d'une licence de type P1 ou P2.

Les différentes licences Azure

Architecture

Pas vraiment plus clair ici, mais il semble que nous avons besoin de n'avons pas besoin d'un serveur AD FS : lien.

Azure Licensing

Azure AD (partie I)

Azure Portal | Azure Active Directory icon

Créer un locataire

Azure Portal | Create a tenant Azure Portal | Select a tenant type Azure Portal | Configure your new directory Azure Portal | Create a tenant, validation passed

Activer la licence Azure AD Premium P2

Azure Portal | Create a tenant, validation passed Azure Portal | Create a tenant, validation passed Azure Portal | Create a tenant, validation passed Azure Portal | Create a tenant, validation passed

Créer un utilisateur AD Connect

Nous allons depuis le portail Azure créer un nouvel utilisateur qui sera utilisé pour synchroniser notre AD local (std.local) avec Azure AD (std2.onmicrosoft.com).

Azure Portal | Create a new user Azure Portal | Create a new user Azure Portal | Create a new user Azure Portal | Create a new user Azure Portal | Create a new user Azure Portal | Create a new user Azure Portal | Create a new user Azure Portal | Create a new user Azure Portal | Create a new user Azure Portal | Create a new user

Serveur AD

AD Connect

Téléchargement

Nous devons maintenant installer et configurer le logiciel AD Connect. Il est utilisé pour synchroniser les comptes utilisateurs AD local vers notre Azure AD.

Ce logiciel a besoin d'être installé une fois, sur un serveur AD.

Azure Portal | Azure AD Connect Menu Azure Portal | Download Azure AD Connect

Installer AD Connect

Azure AD Connect | Welcome to Azure AD Connect Azure AD Connect | Express Settings Azure AD Connect | Install required components Azure AD Connect | Install required components Azure AD Connect | Install required components Azure AD Connect | Install required components Azure AD Connect | Install required components Azure AD Connect | Install required components Azure AD Connect | Install required components Azure AD Connect | Install required components Azure AD Connect | Install required components Azure AD Connect | Filter users and devices Azure AD Connect | Optional features Azure AD Connect | Ready to configure Azure AD Connect | Install required components

Ajouter du nom de domaine principal Azure dans l'AD local

Création des utilisateurs RDS

Azure AD (partie II)

Retourner sur le portail Azure, afin d'activer le MFA.

Activer le MFA

Azure Portal | Create a tenant, validation passed Azure Portal | Create a tenant, validation passed Azure Portal | Create a tenant, validation passed

Serveur NPS (partie I)

Nous avons besoin d'un serveur NPS, il peut être installé sur le serveur AD mais dans ce guide je l'installerai dans une machine virtuelle dédiée.

Désactiver la configuration renforcée d'Internet Explorer

Je recommande de désactiver (au moins temporairement) la sécurité renforcée d'Internet Explorer car elle peut poser des problèmes au moment de l'authentification Azure lors de l'exécution du script PowerShell AzureMfaNpsExtnConfigSetup.

Installation du rôle NPS

Nous pouvons au choix installer le rôle NPS via PowerShell ou depuis l'interface graphique.

PowerShell

PS C:\Users\administrator.STD> Install-WindowsFeature NPAS -Restart -IncludeManagementTools

GUI

Server manager dashboard, Add Roles and Features

L'extension NPS pour Azure Multi-Factor Authentication

Il s'agit d'un module qui permet d'ajouter des fonctionnalités Azure MFA. Cela va permettre au serveur NPS de communiquer avec notre infrastructure Azure AD.

Installation

NPS Extension For Azure MFA Setup NPS Extension For Azure MFA Setup

Script AzureMfaNpsExtnConfigSetup.ps1

Maintenant nous avons besoin d'exécuter le script AzureMfaNpsExtnConfigSetup.ps1 dans le but de configurer les certificates qui seront utilisés par l'extension NPS pour communiquer avec Azure.

PS C:\Users\administrator.STD> cd 'c:\Program Files\Microsoft\AzureMfa\Config'
PS C:\Users\administrator.STD> .\AzureMfaNpsExtnConfigSetup.ps1

Pare-feu Windows

Lors de mes tests il m'a semblé que Windows (testés sous Windows Server 2019) n'ouvrait pas automatiquement les ports RADIUS (a re-tester). Donc dans ce cas, il faudra ouvrir les ports udp 1812, udp 1813, udp 1645, udp 1646 manuellement.

PS C:\Users\administrator.STD> netsh advfirewall firewall add rule name="NPS" dir=in localport=1812,1813,1645,1646 remoteport=0-65535 protocol=UDP action=allow remoteip=any localip=any

Serveur RDS

Run, Open, tsgateway.msc Run, Open, tsgateway.msc Run, Open, tsgateway.msc Run, Open, tsgateway.msc TS GATEWAY SERVER GROUP Properties, general tab Edit RADIUS Server, load balancing tab

Serveur NPS (partie II)

Enregistrer le serveur dans Active Directory

Créer un Client Radius

Création d'une Stratégie réseau

Client RDS

Périphérique Android / Application Microsoft Authenticator

Microsoft Authenticator est une application Android et iOS pour smartphone. Elle permet une authentification à double facteur par l'utilisation d'un téléphone.

L'application peut se trouver dans la plupart des magasin d'applications.

Vérifier la méthode d'authentification par défaut

Il faut vérifier que la méthode d'authentification par défaut soit Microsoft Authenticator sinon MFA peut à la place très bien envoyer des SMS, et cela ne pourra pas fonctionner lors de l'authentification RDS.

Client RDS

Installer les certificats

Dépannage

Sources

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Contact :