Partager via


Configurer SMB sur le contrôle d’accès client QUIC

Le contrôle d’accès client SMB sur QUIC vous permet de restreindre quels clients peuvent accéder aux serveurs SMB sur QUIC. Le contrôle d’accès client vous permet de créer des listes d’autorisation et des listes de blocage pour que les appareils se connectent au serveur de fichiers. Le contrôle d’accès client offre aux organisations une protection supplémentaire sans modifier l’authentification utilisée lors de l’établissement de la connexion SMB, ni l’expérience utilisateur finale.

Fonctionnement du contrôle d’accès client

Le contrôle d’accès client implique la vérification du serveur d’une liste de certificats de contrôle d’accès pour déterminer si un client est autorisé à établir une connexion QUIC avec le serveur. Le serveur valide la chaîne de certificats client et garantit qu’il est approuvé avant de procéder aux vérifications du contrôle d’accès. Pour configurer le contrôle d’accès client, un administrateur émet un certificat au client et peut ajouter un hachage du certificat à une liste de contrôle d’accès gérée par le serveur.

Si le client est autorisé à se connecter au serveur via QUIC, un tunnel chiffré TLS 1.3 sur le port UDP 443 est créé. Le contrôle d’accès client prend également en charge les certificats avec des noms alternatifs de sujet. Vous pouvez également configurer SMB sur QUIC pour bloquer l’accès en révoquant des certificats ou en refusant explicitement l’accès à certains appareils. Un administrateur de serveur est en mesure d’empêcher un client d’accéder au serveur en révoquant le certificat client, au lieu de s’appuyer uniquement sur le contrôle d’accès client.

Remarque

Nous recommandons d’utiliser SMB sur QUIC avec des domaines Active Directory, cependant ce n’est pas obligatoire. Vous pouvez également déployer SMB sur QUIC sur un serveur joint à un groupe de travail, qui utilise des informations d’identification d’utilisateur locales et NTLM.

Des entrées de contrôle d’accès peuvent être ajoutées et supprimées à l’aide des applets de commande Grant-SmbClientAccessToServer et Revoke-SmbClientAccessToServer respectivement. Les entrées de contrôle d'accès refusé peuvent être ajoutées à l'aide de l'applet de commande Block-SmbClientAccessToServer et supprimées à l'aide de l'applet de commande Unblock-SmbClientAccessToServer respectivement. Les entrées de la liste de contrôle d’accès peuvent être affichées à l’aide de l’applet de commande Get-SmbClientAccessToServer.

Un certificat feuille peut être accordé ou refusé en ajoutant une entrée de contrôle d’accès qui identifie le certificat par son hachage SHA256. Un groupe de certificats feuilles ayant un émetteur commun peut se voir accorder ou refuser l’accès en ajoutant une entrée de contrôle d’accès pour cet émetteur commun. Une entrée d’émetteur peut être ajoutée pour les certificats d’autorité de certification intermédiaires et les certificats d’autorité de certification racine. L’utilisation des entrées de l’émetteur peut être utile, car elles permettent de réduire le nombre total d’entrées qui doivent être ajoutées. Si aucun des certificats de la chaîne de certificats du client n’est refusé et qu’au moins un accès est autorisé, le client reçoit l’accès. Par exemple:

  • Si une entrée autorisée est ajoutée pour un certificat d'une autorité de certification et qu'une entrée de refus est ajoutée pour l'un des certificats finaux, tous les certificats émis par l'autorité de certification se voient accorder l'accès, à l'exception du certificat pour lequel l'entrée de refus est ajoutée.

  • Si une entrée de refus est ajoutée pour un certificat d’autorité de certification et qu’une entrée d’autorisation est ajoutée pour l’un des certificats principaux, tous les certificats émis par l’autorité de certification se voient l’accès refusé. Le certificat, pour lequel une entrée d’autorisation a été ajoutée, se voit refuser l’accès, car toute entrée de refus dans la chaîne des certificats est prioritaire sur les entrées d’autorisation.

  • Supposons qu’une autorité de certification racine possède deux autorités de certification intermédiaires appelées autorité de certification intermédiaire 1 et autorité de certification intermédiaire 2. Si une entrée autorisée est ajoutée pour l’autorité de certification racine et qu’une entrée de refus est ajoutée pour l’autorité de certification intermédiaire 2, les certificats émis par l’autorité de certification intermédiaire 1 reçoivent l’accès et les certificats émis par l’autorité de certification intermédiaire 2 sont refusés.

Prérequis

Avant de pouvoir configurer le contrôle d’accès client, vous avez besoin d’un serveur SMB avec les prérequis suivants.

  • Un serveur SMB exécutant Windows Server 2022 Datacenter : Azure Edition avec la Mise à jour du 12 mars 2024 : KB5035857 ou Windows Server 2025 ou une version ultérieure. Pour déverrouiller la fonctionnalité en préversion, vous devez également installer Windows Server 2022 KB5035857 240302_030531 Feature Preview.
  • SMB sur QUIC activé et configuré sur le serveur. Pour savoir comment configurer SMB sur QUIC, veuillez consulter la section SMB sur QUIC.
  • Si vous utilisez des certificats client délivrés par une autorité de certification (CA) différente, vous devez vous assurer que la CA est approuvée par le serveur.
  • Privilèges administratifs pour le serveur SMB que vous configurez.

Important

Une fois KB5035857 installée, vous devez activer cette fonctionnalité dans la stratégie de groupe :

  1. Cliquez sur Démarrer, saisissez gpedit, puis sélectionnez Modifier la stratégie de groupe.
  2. Accédez à Configuration ordinateur\Modèles d’administration\KB5035857 240302_030531 Préversion de fonctionnalité\Windows Server 2022.
  3. Ouvrez la stratégie Préversion de fonctionnalité KB5035857 240302_030531, puis sélectionnez Activée.

Vous avez également besoin d’un client SMB avec les prérequis suivants.

Important

Une fois KB5035854 installée, vous devez activer cette fonctionnalité dans la stratégie de groupe :

  1. Cliquez sur Démarrer, saisissez gpedit, puis sélectionnez Modifier la stratégie de groupe.
  2. Accédez à Configuration ordinateur\Modèles d’administration\KB5035854 240302_030535 Préversion de fonctionnalité\Windows Server 11 (version d’origine).
  3. Ouvrez la stratégie Préversion de fonctionnalité KB5035854 240302_030535, puis sélectionnez Activée.

Configurer le serveur SMB

Pour gérer les paramètres du client SMB, il est nécessaire de configurer d’abord le serveur SMB pour qu’il impose au client d’envoyer une chaîne de certificats valide et approuvée et d’effectuer les vérifications de contrôle d’accès en fonction de la chaîne de certificats client. Pour effectuer cette action, exécutez la commande suivante :

Set-SmbServerCertificateMapping -RequireClientAuthentication $true

Remarque

Si les deux RequireClientAuthentication et SkipClientCertificateAccessCheck sont définis sur $true, le serveur vérifie la validité et la fiabilité de la chaîne de certificats client, mais n’effectue pas de vérifications de contrôle d’accès.

Configurer le client SMB

Collectez les informations sur le certificat client SMB

Pour collecter le hachage de votre certificat client à l’aide de PowerShell :

  1. Ouvrez une invite de commandes PowerShell avec élévation de privilèges sur le client SMB.

  2. Listez les certificats dans le magasin de certificats du client en exécutant la commande suivante.

    Get-ChildItem -Path Cert:\LocalMachine\My
    
  3. Exécutez la commande suivante pour stocker le certificat dans une variable. Remplacez <subject name> par le nom du sujet du certificat que vous souhaitez utiliser.

    $clientCert = Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object {$_.Subject -Match "<subject name>"}
    
  4. Notez le hachage SHA256 du certificat client en exécutant la commande suivante. Vous avez besoin de cet identifiant lors de la configuration du contrôle d’accès client.

    $clientCert.GetCertHashString("SHA256")
    

Remarque

L’empreinte stockée dans l’objet $clientCert utilise l’algorithme SHA1. Cela est utilisé par des commandes telles que New-SmbClientCertificateMapping. Vous aurez également besoin de l’empreinte SHA256 pour configurer le contrôle d’accès client, ces empreintes seront différentes selon les algorithmes utilisés contre le même certificat.

Associez le certificat client au client SMB

Pour associer le certificat client au client SMB :

  1. Ouvrez une invite de commandes PowerShell avec élévation de privilèges sur le client SMB.

  2. Exécutez la commande New-SmbClientCertificateMapping pour associer le certificat client. Remplacez <namespace> par le nom de domaine complet (FQDN) du serveur SMB et utilisez l’empreinte du pouce SHA1 du certificat client que vous avez collectée dans la section précédente en utilisant la variable.

    New-SmbClientCertificateMapping -Namespace <namespace> -Thumbprint $clientCert.Thumbprint -StoreName My
    

Une fois terminé, le certificat client est utilisé par le client SMB pour s’authentifier auprès du serveur SMB correspondant au FQDN.

Tester la connectivité de cartographie

Exécutez un test de connectivité en établissant une correspondance avec un partage pour votre serveur ou appareil client. Pour ce faire, exécutez l’une des commandes suivantes :

NET USE \\<server DNS name>\<share name> /TRANSPORT:QUIC

Or

New-SmbMapping -RemotePath \\<server DNS name>\<share name> -TransportType QUIC

Si vous recevez un message d’erreur indiquant que l’accès a été refusé par le serveur, vous êtes prêt à passer à l’étape suivante, car cela vérifie que le mappage de certificat de serveur et le mappage de certificat client sont configurés.

Configurer le contrôle d’accès client

Accorder un accès individuel aux clients

Suivez les étapes pour accorder un accès spécifique à un client au serveur SMB en utilisant le contrôle d’accès client.

  1. Connectez-vous au serveur SMB.

  2. Ouvrez une invite de commandes PowerShell avec élévation de privilèges sur le serveur SMB.

  3. Exécutez la commande Grant-SmbClientAccessToServer pour accorder l’accès au certificat client. Remplacez <name> par le nom d’hôte du serveur SMB et <hash> en utilisant l’identifiant du certificat client SHA256 que vous avez collecté dans la section Collecter les informations sur le certificat client SMB.

    Grant-SmbClientAccessToServer -Name <name> -IdentifierType SHA256 -Identifier <hash>
    

Vous avez maintenant accordé l’accès au certificat client. Vous pouvez vérifier l’accès au certificat client en exécutant l’applet de commande Get-SmbClientAccessToServer.

Accorder des autorités de certification spécifiques

Suivez la procédure pour accorder l’accès aux clients d’une autorité de certification spécifique, également appelée émetteur, en utilisant le contrôle d’accès client.

  1. Connectez-vous au serveur SMB.

  2. Ouvrez une invite de commandes PowerShell avec élévation de privilèges sur le serveur SMB.

  3. Exécutez la commande Grant-SmbClientAccessToServer pour accorder l’accès au certificat client. Remplacez <name> par le nom d’hôte du serveur SMB et <subject name> par le nom distinctif X.500 complet du certificat de l’émetteur. Par exemple : CN=Contoso CA, DC=Contoso, DC=com.

    Grant-SmbClientAccessToServer -Name <name> -IdentifierType ISSUER -Identifier "<subject name>"
    

Une fois cette étape terminée, exécutez l’applet de commande New-SmbMapping comme indiqué dans test de connectivité de mappage, car une deuxième exécution est recommandée pour vérifier que le contrôle d’accès client a été correctement configuré.

Journaux des événements d’audit

Certains événements, tels que l’accès autorisé et refusé, sont capturés à des fins de résolution des problèmes. Ces événements fournissent des informations sur les certificats clients (à l’exclusion du certificat racine) tels que l’objet, l’émetteur, le numéro de série, le hachage SHA1 et SHA256 et les entrées de contrôle d’accès qui s’appliquent à ces certificats. Ces événements affichent un ID de connexion. Cet ID s’affiche dans certains événements de connectivité client, ce qui permet à l’administrateur de correspondre facilement au serveur avec le client qui a tenté d’établir la connexion.

L’audit de ces événements est désactivé par défaut et peut être activé en exécutant la commande suivante :

Set-SmbServerConfiguration -AuditClientCertificateAccess $true

Une fois activés, ces événements sont capturés dans l’observateur d’événements dans les chemins suivants :

Chemin ID d’événement
Journaux des applications et des services\Microsoft\Windows\SMBServer\Audit 3007
3008
3009
Journaux des applications et des services\Microsoft\Windows\SMBClient\Connectivité 30831