Comment détecter, activer et désactiver SMBv1, SMBv2 et SMBv3 dans Windows et Windows Server

S’applique à : Windows 10 Pro released in July 2015Windows Vista EntrepriseWindows Vista Professionnel Plus

Résumé


Cet article explique comment activer et désactiver Server Message Block (SMB) version 1 (SMBv1), SMB version 2 (SMBv2) et SMB version 3 (SMBv3) dans les composants client et serveur SMB. 
 

Sous Windows 7 et Windows Server 2008 R2, la désactivation de SMBv2 désactive les fonctionnalités suivantes :
  • Composition de demandes : permet d’envoyer plusieurs demandes SMB 2 en tant que demande réseau unique
  • Lectures et écritures plus importantes : optimisation de l’utilisation des réseaux rapides
  • Mise en cache des propriétés des dossiers et des fichiers : les clients conservent des copies locales des dossiers et des fichiers
  • Handles durables : permet une reconnexion transparente au serveur en cas de déconnexion temporaire
  • Amélioration de la signature des messages : HMAC SHA-256 remplace MD5 en tant qu’algorithme de hachage
  • Amélioration de l’évolutivité pour le partage de fichiers : le nombre d’utilisateurs, de partages et de fichiers ouverts par serveur augmente considérablement
  • Prise en charge des liens symboliques
  • Modèle de leasing par verrou optionnel du client : limite les données transférées entre le client et le serveur afin d’améliorer les performances sur des réseaux à latence élevée et d’augmenter l’évolutivité des serveurs SMB
  • Prise en charge de grandes unités MTU : pour une utilisation complète d’Ethernet 10 gigaoctets (Go)
  • Amélioration de l’efficacité énergétique : les clients ayant des fichiers ouverts sur un serveur peuvent passer en mode veille
Sous Windows 8, Windows 8.1, Windows 10, Windows Server 2012 et Windows Server 2016, la désactivation de SMBv3 désactive les fonctionnalités suivantes (en plus des fonctionnalités de SMBv2 décrites dans la liste ci-dessus) :
  • Basculement transparent : les clients se reconnectent sans interruption aux nœuds de cluster durant les opérations de maintenance ou de basculement
  • Montée en charge : accès simultané aux données partagées sur tous les nœuds de cluster de fichiers 
  • Multicanal : agrégation de la bande passante du réseau et de la tolérance de panne si plusieurs chemins sont disponibles entre le client et le serveur
  • SMB Direct : ajout de la prise en charge réseau RDMA pour des performances très élevées avec latence faible et faible utilisation du processeur
  • Chiffrement : chiffrement de bout en bout et protection contre l’espionnage sur des réseaux non fiables
  • Leasing de répertoire : amélioration des temps de réponse des applications dans les filiales par l’intermédiaire de la mise en cache
  • Optimisation des performances : optimisations pour les petites E/S de lecture/écriture aléatoires

Informations supplémentaires


Le protocole SMBv2 a été introduit dans Windows Vista et Windows Server 2008.

Le protocole SMBv3 a été introduit dans Windows 8 et Windows Server 2012.

Pour plus d’informations sur les fonctionnalités de SMBv2 et de SMBv3, reportez-vous aux sites web Microsoft TechNet suivants :
 

Comment supprimer SMBv1 de manière appropriée dans Windows 8.1, Windows 10, Windows 2012 R2 et Windows Server 2016


Windows Server 2012 R2 et 2016 : Méthodes PowerShell

SMB v1

Détection :

Get-WindowsFeatureFS-SMB1

Désactivation :

Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol

Activation :

Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol


SMB v2/v3

Détection :

Get-SmbServerConfiguration | Sélectionner EnableSMB2Protocol

Désactivation :

Set-SmbServerConfiguration -EnableSMB2Protocol $false

Activation :

Set-SmbServerConfiguration -EnableSMB2Protocol $true



Windows Server 2012 R2 et Windows Server 2016 : Méthode Server Manager pour désactiver SMB

SMB v1
Server Manager - Dashboard method



Windows 8.1 et Windows 10 : Méthode PowerShell

Protocole SMB v1



Windows 8.1 et Windows 10 : méthode Ajout/Suppression de programmes

Add-Remove Programs client method
 
 

Comment détecter l'état, activer ou désactiver les protocoles SMB sur le serveur SMB


Pour Windows 8 et Windows Server 2012

Windows 8 et Windows Server 2012 introduisent la nouvelle applet de commande Windows PowerShell Set-SMBServerConfiguration. Cette applet de commande permet d’activer ou de désactiver les protocoles SMBv1, SMBv2 et SMBv3 sur le composant serveur. 


Il n’est pas obligatoire de redémarrer l’ordinateur après avoir exécuté l’applet de commande Set-SMBServerConfiguration.

SMB v1 sur le serveur SMB
Détection : Get-SmbServerConfiguration | Select EnableSMB1Protocol
Désactivation : Set-SmbServerConfiguration -EnableSMB1Protocol $false
Activation : Set-SmbServerConfiguration -EnableSMB1Protocol $true

Pour plus d’informations, consultez le site web Stockage serveur chez Microsoft.

SMB v2/ v3 sur le serveur SMB
Détection : Get-SmbServerConfiguration | Sélectionner EnableSMB2Protocol
Désactivation : Set-SmbServerConfiguration -EnableSMB2Protocol $false
Activation : Set-SmbServerConfiguration -EnableSMB2Protocol $true


Pour Windows 7, Windows Server 2008 R2, Windows Vista et Windows Server 2008

Pour activer ou désactiver les protocoles SMB sur un serveur SMB qui exécute Windows 7, Windows Server 2008 R2, Windows Vista ou Windows Server 2008, utilisez Windows PowerShell ou l’Éditeur du Registre.

Méthodes PowerShell


SMB v1 sur le serveur SMB

Détection :

Get-Item HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}

Default configuration = Enabled (aucune clé de Registre n'est créée), donc aucune valeur SMB1 n'est renvoyée

Désactivation :

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 –Force

Activation :

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 1 –Force


Remarque Vous devez redémarrer l’ordinateur après avoir apporté ces modifications.

Pour plus d’informations, consultez le site web Stockage serveur chez Microsoft.

SMB v2/ v3 sur le serveur SMB

Détection :

Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}


Désactivation :

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 0 –Force


Activation :

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 –Force


Remarque Vous devez redémarrer l’ordinateur après avoir apporté ces modifications.


Éditeur du Registre

Important Cet article contient des informations sur la façon de modifier le registre. Avant de modifier le Registre, pensez à le sauvegarder et assurez-vous que vous savez le restaurer en cas de problème. Pour plus d'informations sur la sauvegarde, la restauration et la modification du Registre, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
322756 Comment sauvegarder et restaurer le Registre dans Windows

Pour activer ou désactiver SMBv1 sur le serveur SMB, configurez la clé de Registre suivante :

Sous-clé de Registre : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Entrée de Registre : SMB1
REG_DWORD : 0 = Désactivé
REG_DWORD : 1 = Activé
Valeur par défaut : 1 = Activé (aucune clé de registre n’est créée)

Pour activer ou désactiver SMBv2 sur le serveur SMB, configurez la clé de Registre suivante :

Sous-clé de Registre : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Entrée de Registre : SMB2
REG_DWORD : 0 = Désactivé
REG_DWORD : 1 = Activé
Valeur par défaut : 1 = Activé (aucune clé de registre n’est créée)


Remarque Vous devez redémarrer l’ordinateur après avoir apporté ces modifications.

Comment détecter l'état, activer ou désactiver les protocoles SMB sur le client SMB


Pour Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8 et Windows Server 2012

Remarque Lorsque vous activez ou désactivez SMBv2 dans Windows 8 ou Windows Server 2012, SMBv3 est également activé ou désactivé. Ce comportement se produit, car ces protocoles partagent la même pile.

SMB v1 sur le client SMB
Détection : sc.exe qc lanmanworkstation
Désactivation : sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled
Activation : sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb10 start= auto


Pour plus d’informations, consultez le site web Stockage serveur chez Microsoft.

SMB v2/v3 sur le client SMB
Détection : sc.exe qc lanmanworkstation
Désactivation : sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
sc.exe config mrxsmb20 start= disabled
Activation : sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb20 start= auto


Remarques

  • Vous devez exécuter ces commandes à une invite de commandes avec élévation de privilèges.
  • Vous devez redémarrer l’ordinateur après avoir apporté ces modifications.

Désactivation du serveur SMBv1 avec la stratégie de groupe


Cette procédure configure le nouvel élément suivant dans le registre :


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

Entrée de Registre : SMB1 REG_DWORD : 0 = Désactivé


Pour configurer cet élément à l’aide de la stratégie de groupe, procédez comme suit :

  1. Ouvrez la console de gestion des stratégies de groupe. Cliquez avec le bouton droit sur l’objet de stratégie de groupe (GPO) qui doit contenir le nouvel élément de préférence, puis cliquez sur Modifier.
  2. Dans l’arborescence de la console, sous Configuration ordinateur, développez le dossier Préférences, puis le dossier Paramètres Windows.
  3. Cliquez avec le bouton droit sur le nœud Registre, pointez sur Nouveau, puis sélectionnez Élément Registre.

    Élément de Registre - nouveau - Registre

Dans la boîte de dialogue Nouvelles propriétés de Registre, sélectionnez les éléments suivants :

  • Action : Créer
  • Ruche : HKEY_LOCAL_MACHINE
  • Chemin d’accès de la clé : SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
  • Nom de la valeur : SMB1
  • Type de la valeur : REG_DWORD
  • Données de la valeur : 0

Nouvelles propriétés de Registre - général

Cette opération désactive les composants du serveur SMBv1. Cette stratégie de groupe doit être appliquée à l’ensemble des stations de travail, serveurs et contrôleurs de domaine nécessaires dans le domaine.

Remarque Les filtres WMI peuvent également être définis pour exclure les systèmes d’exploitation non pris en charge ou des exclusions sélectionnées telles que Windows XP. 

Désactivation du client SMBv1 avec la stratégie de groupe


Pour désactiver le client SMBv1, la clé de Registre des services doit être mise à jour pour désactiver le démarrage de MRxSMB10, puis la dépendance à MRxSMB10 doit être supprimée de l’entrée pour LanmanWorkstation afin de pouvoir démarrer normalement sans exiger le démarrage préalable de MRxSMB10.

Cette opération met à jour et remplace les valeurs par défaut dans les 2 éléments suivants du registre :


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10

Entrée de Registre : Start REG_DWORD : 4 = Désactivé

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation

Entrée de Registre : DependOnService REG_MULTI_SZ : « Bowser », « MRxSmb20 », « NSI »


Remarque La valeur par défaut incluait MRxSMB10, qui est à présent supprimée en tant que dépendance.


Pour configurer cet élément à l’aide de la stratégie de groupe, procédez comme suit :

  1. Ouvrez la console de gestion des stratégies de groupe. Cliquez avec le bouton droit sur l’objet de stratégie de groupe (GPO) qui doit contenir le nouvel élément de préférence, puis cliquez sur Modifier.
  2. Dans l’arborescence de la console, sous Configuration ordinateur, développez le dossier Préférences, puis le dossier Paramètres Windows.
  3. Cliquez avec le bouton droit sur le nœud Registre, pointez sur Nouveau, puis sélectionnez Élément Registre.

Élément de Registre - nouveau - Registre

Dans la boîte de dialogue Nouvelles propriétés de Registre, sélectionnez les éléments suivants :

  • Action : Mettre à jour
  • Ruche : HKEY_LOCAL_MACHINE
  • Chemin d’accès de la clé : SYSTEM\CurrentControlSet\services\mrxsmb10
  • Nom de la valeur : Start
  • Type de la valeur : REG_DWORD
  • Données de la valeur : 4

Propriétés de début - général

Supprimez ensuite la dépendance à l’élément MRxSMB10 qui vient d’être désactivé.

Dans la boîte de dialogue Nouvelles propriétés de Registre, sélectionnez les éléments suivants :

  • Action : Remplacer
  • Ruche : HKEY_LOCAL_MACHINE
  • Chemin d’accès de la clé : SYSTEM\CurrentControlSet\Services\LanmanWorkstation
  • Nom de la valeur : DependOnService
  • Type de la valeur : REG_MULTI_SZ
  • Données de la valeur :
    • Bowser
    • MRxSmb20
    • NSI

Remarque Ces trois chaînes ne comportent pas de puces (voir la capture d’écran suivante).

Propriétés DependOnService

La valeur par défaut inclut MRxSMB10 dans de nombreuses versions de Windows. Par conséquent, si vous la remplacez par cette chaîne à valeurs multiples, MRxSMB10 est supprimé en tant que dépendance pour LanmanServer et la chaîne passe de quatre valeurs par défaut aux trois valeurs indiquées ci-dessus.

Remarque Lorsque vous utilisez la console de gestion des stratégies de groupe, vous n’avez pas besoin d’utiliser des guillemets ni des virgules. Il vous suffit de taper chaque entrée sur les lignes individuelles.

Redémarrage nécessaire

Après l’application de la stratégie et une fois les paramètres du registre établis, les systèmes ciblés doivent être redémarrés avant la désactivation de SMB v1.

Résumé

Si tous les paramètres se trouvent dans le même objet de stratégie de groupe (GPO), la gestion des stratégies de groupe affiche les paramètres suivants.

Éditeur de gestion de stratégie de groupe - Registre

Test et validation

Après avoir configuré ces éléments, autorisez la réplication et la mise à jour de la stratégie. À des fins de test, exécutez gpupdate /force dans une invite de commandes, puis vérifiez les machines cibles pour vous assurer que les paramètres de registre sont correctement appliqués. Veillez à ce que SMBv2 et SMBv3 fonctionnent pour tous les autres systèmes de l’environnement.