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

S’applique à : Windows 10, Windows 8.1, Windows 8, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012

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

La désactivation ou la suppression de SMBv1 peut entraîner des problèmes de compatibilité avec les anciens ordinateurs ou logiciels, SMBv1 présente des failles de sécurité significatives et nous vous encourageons vivement à ne pas l’utiliser.

Désactivation de SMBv2 ou SMBv3 pour la résolution des problèmes

Nous vous recommandons de laisser SMBv2 et SMBv3 activés, mais il peut être utile d’en désactiver un temporairement pour le dépannage. Pour plus d’informations, consultez Comment détecter l’État, activer et désactiver les protocoles SMB sur le serveur SMB.

Dans Windows 10, Windows 8.1 et Windows 8, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2 et Windows Server 2012, la désactivation de SMBv3 désactive les fonctionnalités suivantes :

  • Basculement transparent-les clients se reconnectent sans interruption aux nœuds de cluster pendant la maintenance ou le basculement
  • Scale Out-accès simultané aux données partagées sur tous les nœuds de cluster de fichiers
  • Multichannel-agrégation de la bande passante réseau et de la tolérance de panne si plusieurs chemins sont disponibles entre le client et le serveur
  • SMB direct : ajoute la prise en charge de la mise en réseau RDMA pour des performances élevées, avec une faible latence et une faible utilisation du processeur
  • Chiffrement-fournit un chiffrement de bout en bout et protège contre les écoutes clandestines sur les réseaux non fiables
  • Leasing de répertoires : améliore les temps de réponse des applications dans les succursales grâce à la mise en cache
  • Optimisations des performances-optimisations pour les e/s de lecture/écriture aléatoires

Dans Windows 7 et Windows Server 2008 R2, la désactivation de SMBv2 désactive les fonctionnalités suivantes :

  • Composition de demande : permet d’envoyer plusieurs demandes SMBv2 en tant que demande réseau unique
  • Lectures et écritures plus grandes-meilleure utilisation de réseaux plus rapides
  • Mise en cache des propriétés de dossier et de fichier-les clients conservent des copies locales de dossiers et de fichiers
  • Handles durables-autoriser la connexion à se reconnecter en toute transparence au serveur s’il existe une déconnexion temporaire
  • Signature de message améliorée-HMAC SHA-256 remplace MD5 comme algorithme de hachage
  • Évolutivité améliorée pour le partage de fichiers : le nombre d’utilisateurs, de partages et de fichiers ouverts par serveur a considérablement augmenté
  • Prise en charge des liens symboliques
  • Modèle de bail oplock client : limite les données transférées entre le client et le serveur, ce qui améliore les performances sur les réseaux à latence élevée et l’évolutivité du serveur SMB.
  • Large prise en charge MTU : pour une utilisation complète de 10 Gigabit Ethernet (GbE)
  • Efficacité énergétique améliorée : les clients qui ont des fichiers ouverts sur un serveur peuvent se mettre en veille

Le protocole SMBv2 a été introduit dans Windows Vista et Windows Server 2008, tandis que le protocole SMBv3 a été introduit dans Windows 8 et Windows Server 2012. Pour plus d’informations sur les fonctionnalités SMBv2 et SMBv3, consultez les articles suivants :

Comment supprimer SMBv1

Voici comment supprimer SMBv1 dans Windows 10, Windows 8.1, Windows Server 2019, Windows Server 2016 et Windows 2012 R2.

Méthodes PowerShell

SMBv1 (client et serveur)
  • Identifie

    Get-WindowsOptionalFeature -Online -FeatureName smb1protocol
    
  • Désactive

    Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol
    
  • Activez :

    Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol
    

Windows Server 2012 R2, Windows Server 2016, Windows Server 2019 : méthode Gestionnaire de serveur pour la désactivation de SMB

SMBv1

Gestionnaire de serveur-Dashboard, méthode

Pour supprimer SMBv1 de Windows Server :

  1. Dans le tableau de bord Gestionnaire de serveur du serveur sur lequel vous souhaitez supprimer des SMBv1, sous configurer ce serveur local, sélectionnez Ajouter des rôles et des fonctionnalités.
  2. Dans la page avant de commencer , sélectionnez Démarrer l’Assistant Suppression de rôles et de fonctionnalités, puis sur la page suivante, sélectionnez suivant.
  3. Dans la page Sélectionner le serveur de destination sous pool de serveurs, assurez-vous que le serveur pour lequel vous souhaitez supprimer la fonctionnalité est sélectionné, puis sélectionnez suivant.
  4. Dans la page supprimer des rôles de serveurs , sélectionnez suivant.
  5. Dans la page Supprimer les fonctionnalités , désactivez la case à cocher prise en charge du partage de fichiers SMB 1.0/CIFS , puis sélectionnez suivant.
  6. Sur la page confirmer les sélections pour la suppression, vérifiez que la fonctionnalité est affichée, puis sélectionnez supprimer.

Windows 8.1 et Windows 10 : méthode PowerShell

Protocole SMBv1
  • Identifie

    Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
    
  • Désactive

    Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
    
  • Activez :

    Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
    
Protocole SMBv2/v3 (désactive uniquement SMBv2/v3 Server)
  • Identifie

    Get-SmbServerConfiguration | Select EnableSMB2Protocol
    
  • Désactive

    Set-SmbServerConfiguration -EnableSMB2Protocol $false
    
  • Activez :

    Set-SmbServerConfiguration -EnableSMB2Protocol $true
    

Windows 8.1 et Windows 10 : méthode ajout/suppression de programmes

Méthode du client de Add-Remove programmes

Pour désactiver SMBv1 sur Windows 8.1 et Windows 10 :

  1. Dans Panneau de configuration, sélectionnez Programmes et fonctionnalités.
  2. Sous page d’emplacement du panneau de configuration, sélectionnez activer ou désactiver des fonctionnalités Windows pour ouvrir la zone fonctionnalités Windows .
  3. Dans la zone fonctionnalités Windows , faites défiler la liste, désactivez la case à cocher prise en charge du partage de fichiers SMB 1.0/CIFS , puis sélectionnez OK.
  4. Une fois que Windows a appliqué la modification, dans la page confirmation, sélectionnez redémarrer maintenant.

Comment détecter l’État, activer et désactiver les protocoles SMB sur le serveur SMB

Pour Windows 8 et Windows Server 2012

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

Notes

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 parce que ces protocoles partagent la même pile.

Vous n’êtes pas obligé de redémarrer l’ordinateur après l’exécution de l’applet de commande Set-SMBServerConfiguration .

SMBv1 sur le serveur SMB
  • Identifie

    Get-SmbServerConfiguration | Select EnableSMB1Protocol
    
  • Désactive

    Set-SmbServerConfiguration -EnableSMB1Protocol $false
    
  • Activez :

    Set-SmbServerConfiguration -EnableSMB1Protocol $true
    

Pour plus d’informations, consultez stockage serveur chez Microsoft.

SMB v2/v3 sur le serveur SMB
  • Identifie

    Get-SmbServerConfiguration | Select EnableSMB2Protocol
    
  • Désactive

    Set-SmbServerConfiguration -EnableSMB2Protocol $false
    
  • Activez :

    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

Notes

Cette méthode nécessite PowerShell 2,0 ou une version ultérieure de PowerShell.

SMBv1 sur le serveur SMB

Identifie

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

Configuration par défaut = activé (aucune clé de Registre n’est créée), donc aucune valeur SMB1 n’est retournée

Désactive

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

Activez :

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 stockage serveur chez Microsoft.

SMBv2/v3 sur le serveur SMB

Identifie

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

Désactive

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

Activez :

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

Notes

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

Éditeur du Registre

Important

Suivez attentivement les étapes décrites dans cette section. De graves problèmes peuvent se produire si vous modifiez le Registre de façon incorrecte. Avant de le modifier, sauvegardez le Registre afin de pouvoir le restaurer en cas de problème.

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

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

Registry entry: SMB1
REG_DWORD: 0 = Disabled
REG_DWORD: 1 = Enabled
Default: 1 = Enabled (No registry key is created)

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

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

Registry entry: SMB2
REG_DWORD: 0 = Disabled
REG_DWORD: 1 = Enabled
Default: 1 = Enabled (No registry key is created)

Notes

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

Comment détecter l’État, activer et 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

Notes

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 parce que ces protocoles partagent la même pile.

SMBv1 sur le client SMB
  • Detect

    sc.exe qc lanmanworkstation
    
  • Désactive

    sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
    sc.exe config mrxsmb10 start= disabled
    
  • Activez :

    sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
    sc.exe config mrxsmb10 start= auto
    

Pour plus d’informations, consultez stockage serveur chez Microsoft

SMBv2/v3 sur le client SMB
  • Identifie

    sc.exe qc lanmanworkstation
    
  • Désactive

    sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
    sc.exe config mrxsmb20 start= disabled
    
  • Activez :

    sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
    sc.exe config mrxsmb20 start= auto
    

Notes

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

Désactiver le serveur SMBv1 avec 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 utiliser stratégie de groupe pour configurer ce processus, 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 développez le dossier Paramètres Windows .

  3. Cliquez avec le bouton droit sur le nœud Registre, pointez sur Nouveau et sélectionnez Élément Registre.

    Élément Registry-New-Registry

Dans la boîte de dialogue Propriétés du nouveau registre , sélectionnez les éléments suivants :

  • Action: créer
  • Hive: HKEY_LOCAL_MACHINE
  • Chemin de la clé : SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
  • Nom de la valeur : SMB1
  • Type de valeur : REG_DWORD
  • Données de la valeur : 0

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

Cette procédure désactive les composants du serveur SMBv1. Cette stratégie de groupe doit être appliquée à tous les postes de travail, serveurs et contrôleurs de domaine nécessaires dans le domaine.

Notes

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

Important

Soyez prudent lorsque vous apportez ces modifications sur les contrôleurs de domaine sur lesquels Windows XP hérité ou des systèmes tiers Linux et tiers (qui ne prennent pas en charge SMBv2 ou SMBv3) requièrent l’accès à SYSVOL ou à d’autres partages de fichiers où SMB v1 est désactivé.

Désactiver le client SMBv1 avec stratégie de groupe

Pour désactiver le client SMBv1, la clé de Registre services doit être mise à jour pour désactiver le démarrage de MRxSMB10 , puis la dépendance sur MRxSMB10 doit être supprimée de l’entrée pour LanmanWorkstation , afin qu’elle puisse démarrer normalement sans nécessiter le premier démarrage de MRxSMB10 .

Ce guide met à jour et remplace les valeurs par défaut dans les deux éléments suivants du Registre :

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10

Entrée de Registre : Start REG_DWORD : 4= Disabled

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation

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

Notes

Le MRxSMB10 inclus par défaut, qui est maintenant supprimé en tant que dépendance.

Pour configurer ce à l’aide de 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 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 développez le dossier Paramètres Windows .

  3. Cliquez avec le bouton droit sur le nœud Registre, pointez sur Nouveau et sélectionnez Élément Registre.

  4. Dans la boîte de dialogue Propriétés du nouveau registre , sélectionnez les éléments suivants :

    • Action: mettre à jour
    • Hive: HKEY_LOCAL_MACHINE
    • Chemin de la clé : SYSTEM\CurrentControlSet\services\mrxsmb10
    • Nom de la valeur : début
    • Type de valeur : REG_DWORD
    • Données de la valeur : 4

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

  5. Supprimez ensuite la dépendance sur le MRxSMB10 qui a été désactivé.

    Dans la boîte de dialogue Propriétés du nouveau registre , sélectionnez les éléments suivants :

    • Action: remplacer
    • Hive: HKEY_LOCAL_MACHINE
    • Chemin de la clé : SYSTEM\CurrentControlSet\Services\LanmanWorkstation
    • Nom de la valeur : DependOnService
    • Type de valeur: REG_MULTI_SZ
    • Données de la valeur :
      • Bowser
      • MRxSmb20
      • NSI

    Notes

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

    Propriétés DependOnService

    La valeur par défaut comprend des MRxSMB10 dans de nombreuses versions de Windows. par conséquent, si vous les remplacez par cette chaîne à valeurs multiples, vous supprimez MRxSMB10 en tant que dépendance pour LanmanServer et en allant de quatre valeurs par défaut à ces trois valeurs ci-dessus.

    Notes

    Lorsque vous utilisez Console de gestion des stratégies de groupe, vous n’êtes pas obligé d’utiliser des guillemets ou des virgules. Tapez simplement chaque entrée sur des lignes individuelles.

  6. Redémarrez les systèmes ciblés pour terminer la désactivation de SMB v1.

Audit de l’utilisation de SMBv1

Pour déterminer les clients qui essaient de se connecter à un serveur SMB avec SMBv1, vous pouvez activer l’audit sur Windows Server 2016, Windows 10 et Windows Server 2019. Vous pouvez également effectuer un audit sur Windows 7 et Windows Server 2008 R2 si la mise à jour mensuelle de mai 2018 est installée, et sur Windows 8.1 et Windows Server 2012 R2 si la mise à jour mensuelle de juillet 2017 est installée.

  • Activez :

    Set-SmbServerConfiguration -AuditSmb1Access $true
    
  • Désactive

    Set-SmbServerConfiguration -AuditSmb1Access $false
    
  • Identifie

    Get-SmbServerConfiguration | Select AuditSmb1Access
    

Lorsque l’audit SMBv1 est activé, l’événement 3000 apparaît dans le journal des événements « Microsoft-Windows-SMBServer\Audit », identifiant chaque client qui tente de se connecter à SMBv1.

Résumé

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

Éditeur de gestion des stratégies de groupe-Registre

Test et validation

Après avoir effectué les étapes de configuration décrites dans cet article, autorisez la réplication et la mise à jour de la stratégie. Si nécessaire pour le test, exécutez gpupdate/force à partir d’une invite de commandes, puis examinez les ordinateurs cibles pour vous assurer que les paramètres du Registre sont appliqués correctement. Assurez-vous que SMBv2 et SMBv3 fonctionnent pour tous les autres systèmes de l’environnement.

Notes

N’oubliez pas de redémarrer les systèmes cibles.