Come rilevare, abilitare e disabilitare SMBv1, SMBv2 e SMBv3 in Windows e Windows Server

Si applica a: Windows 10 Pro released in July 2015Windows Vista EnterpriseWindows Vista Business Mostra

Riepilogo


Il questo articolo viene illustrato come abilitare e disabilitare il protocollo Server Message Block (SMB) versione 1 (SMBv1), 2 (SMBv2) e 3 (SMBv3) nei componenti client e server SMB. 
 

In Windows 7 e Windows Server 2008 R2, la disabilitazione di SMBv2 determina la disattivazione delle funzionalità seguenti:
  • Associazione di richieste, che consente l'invio di più richieste SMB 2 come una singola richiesta di rete
  • Operazioni di lettura e scrittura con dimensioni superiori, per ottimizzare l'utilizzo di reti più veloci
  • Memorizzazione di cartelle e proprietà di file nella cache, per consentire ai client di mantenere copie locali di cartelle e file
  • Handle di lunga durata, che consentono di riconnettersi al server in modo trasparente in caso di disconnessione temporanea
  • Miglioramento della firma dei messaggi, utilizzando HMAC SHA-256 come algoritmo di hash al posto di MD5.
  • Scalabilità superiore per la condivisione dei file, che consente un notevole incremento nel numero di utenti, condivisioni e file aperti per ogni singolo server
  • Supporto dei collegamenti simbolici
  • Modello di leasing oplock, che limita la quantità di dati scambiata fra client e server, migliorando le prestazioni nelle reti con latenza elevata e aumentando la scalabilità dei server SMB
  • Supporto di MTU di grandi dimensioni, che consente di sfruttare al massimo la connettività Ethernet a 10 gigabye (GB)
  • Efficienza energetica superiore, grazie alla possibilità di attivare la modalità di sospensione nei client che hanno file aperti su un server
In Windows 8, Windows 8.1, Windows 10, Windows Server 2012 e Windows Server 2016, la disabilitazione di SMBv3 determina la disattivazione delle funzionalità seguenti (oltre alla funzionalità SMBv2 descritta nell'elenco precedente):
  • Failover trasparente, che permette ai client di riconnettersi senza interruzione dei nodi cluster durante un intervento di manutenzione o un failover
  • Scalabilità orizzontale, che permette di accedere contemporaneamente ai dati condivisi in tutti i nodi del cluster di file 
  • Connessione multicanale, ovvero l'aggregazione della larghezza di banda e della tolleranza di errore della rete, quando sono disponibili più percorsi tra client e server
  • SMB diretto, che aggiunge il supporto della connettività di rete RDMA per garantire prestazioni elevatissime con bassa latenza e utilizzo limitato della CPU
  • Funzione di crittografia, che fornisce crittografia end-to-end e protegge dall'ascolto non autorizzato sulle reti non attendibili
  • Leasing di directory, che migliora i tempi di risposta delle applicazioni nelle succursali, attraverso la memorizzazione nella cache
  • Ottimizzazione delle prestazioni per le attività di I/O di lettura e scrittura casuale di piccole dimensioni

Ulteriori informazioni


Il protocollo SMBv2 è stato introdotto in Windows Vista e Windows Server 2008.

Il protocollo SMBv3 è stato introdotto in Windows 8 e Windows Server 2012.

Per ulteriori informazioni sulle funzionalità dei protocolli SMBv2 e SMBv3, visitare i seguenti siti Web Microsoft TechNet:
 

Come rimuovere SMBv1 senza problemi in Windows 8.1, Windows 10, Windows 2012 R2 e Windows Server 2016


Windows Server 2012 R2 e 2016: Metodi PowerShell

SMB v1

Rilevamento:

Get-WindowsFeature FS-SMB1

Disabilitazione:

Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol

Abilitazione:

Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol


SMB v2/v3

Rilevamento:

Get-SmbServerConfiguration | Select EnableSMB2Protocol

Disabilitazione:

Set-SmbServerConfiguration -EnableSMB2Protocol $false

Abilitazione:

Set-SmbServerConfiguration -EnableSMB2Protocol $true



Windows Server 2012 R2 e Windows Server 2016: Disabilitazione di SMB tramite Server Manager

SMB v1
Server Manager - Dashboard method



Windows 8.1 e Windows 10: Metodo PowerShell

Protocollo SMB v1



Windows 8.1 e Windows 10: tramite Installazione applicazioni

Add-Remove Programs client method
 
 

Come abilitare, disabilitare o determinare lo stato dei protocolli SMB nel server SMB


Per Windows 8 e Windows Server 2012

In Windows 8 e Windows Server 2012 è stato introdotto il nuovo cmdlet di Windows PowerShell Set-SMBServerConfiguration, che consente di abilitare o disabilitare i protocolli SMBv1, SMBv2 e SMBv3 nel componente server. 


Dopo l'esecuzione del cmdlet Set-SMBServerConfiguration non è necessario riavviare il computer.

SMB v1 su server SMB
Rilevamento: Get-SmbServerConfiguration | Select EnableSMB1Protocol
Disabilitazione: Set-SmbServerConfiguration -EnableSMB1Protocol $false
Abilitazione: Set-SmbServerConfiguration -EnableSMB1Protocol $true

Per ulteriori informazioni, vedere Server storage at Microsoft (Spazio di archiviazione server alla Microsoft).

SMB v2/v3 su server SMB
Rilevamento: Get-SmbServerConfiguration | Select EnableSMB2Protocol
Disabilitazione: Set-SmbServerConfiguration -EnableSMB2Protocol $false
Abilitazione: Set-SmbServerConfiguration -EnableSMB2Protocol $true


Per Windows 7, Windows Server 2008 R2, Windows Vista e Windows Server 2008

Per abilitare o disabilitare i protocolli SMB in un server SMB che esegue Windows 7, Windows Server 2008 R2, Windows Vista o Windows Server 2008, utilizzare Windows PowerShell o l'editor del Registro di sistema.

Metodi PowerShell


SMB v1 su server SMB

Rilevamento:

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

Configurazione predefinita = Abilitato (non viene creata alcuna chiave di registro), pertanto non viene restituito alcun valore SMB1

Disabilitazione:

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

Abilitazione:

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


Nota: dopo aver apportato queste modifiche, è necessario riavviare il computer.

Per ulteriori informazioni, vedere Server storage at Microsoft (Spazio di archiviazione server alla Microsoft).

SMB v2/v3 su server SMB

Rilevamento:

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


Disabilitazione:

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


Abilitazione:

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


Nota: dopo aver apportato queste modifiche, è necessario riavviare il computer.


Editor del Registro di sistema

Importante: in questo articolo sono contenute informazioni su come modificare il registro di sistema. Prima di modificare il Registro di sistema, assicurarsi di eseguirne una copia di backup e di sapere come ripristinarlo in caso di problemi. Per informazioni su come eseguire il backup, il ripristino e la modifica del Registro di sistema, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
322756 Come eseguire il backup e il ripristino del Registro di sistema in Windows

Per abilitare o disabilitare SMBv1 nel server SMB, configura la seguente chiave del Registro di sistema:

Sottochiave del Registro di sistema HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Elemento del Registro di sistema: SMB1
REG_DWORD: 0 = Disabilitato
REG_DWORD: 1 = Abilitato
Impostazione predefinita: 1 = Abilitato (Non viene creata alcuna chiave del registro di sistema)

Per abilitare o disabilitare SMBv2 nel server SMB, configurare la seguente chiave del Registro di sistema:

Sottochiave del Registro di sistema:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Voce del Registro di sistema: SMB2
REG_DWORD: 0 = Disabilitato
REG_DWORD: 1 = Abilitato
Impostazione predefinita: 1 = Abilitato (Non viene creata alcuna chiave del registro di sistema)


Nota Dopo aver apportato queste modifiche, è necessario riavviare il computer.

Come abilitare, disabilitare o determinare lo stato dei protocolli SMB nel client SMB


Per Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8 e Windows Server 2012

Nota Quando si abilita o si disabilita SMBv2 in Windows 8 o in Windows Server 2012, viene abilitato o disabilitato anche SMBv3. Questo comportamento è dovuto al fatto che tali protocolli condividono lo stesso stack.

SMB v1 su client SMB
Rilevamento: sc.exe qc lanmanworkstation
Disabilitazione: sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled
Abilitazione: sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb10 start= auto


Per ulteriori informazioni, vedere Server storage at Microsoft (Spazio di archiviazione server alla Microsoft)

SMB v2/v3 su client SMB
Rilevamento: sc.exe qc lanmanworkstation
Disabilitazione: sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
sc.exe config mrxsmb20 start= disabled
Abilitazione: sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb20 start= auto


Note

  • Questi comandi devono essere eseguiti da un prompt dei comandi con privilegi elevati.
  • Dopo aver apportato queste modifiche, è necessario riavviare il computer.

Disabilitare il server SMBv1 tramite i Criteri di gruppo


Questa procedura consente di configurare il seguente nuovo elemento nel registro di sistema:


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

Elemento del Registro di sistema: SMB1 REG_DWORD: 0 = Disabilitato


Per la configurazione tramite i Criteri di gruppo:

  1. Avviare la Console Gestione Criteri di gruppo. Fare clic con il pulsante destro del mouse sull'oggetto Criteri di gruppo (GPO), che dovrebbe contenere il nuovo elemento di preferenza, quindi fare clic su Modifica.
  2. Nell'albero della console, in Configurazione computer espandere la cartella Preferenze e quindi la cartella Impostazioni di Windows.
  3. Fare clic con il pulsante destro del mouse sul nodo del Registro di sistema, scegliere Nuovo e selezionare Elemento Registro di sistema.

    Voce del Registro di sistema - nuovo - registro di sistema

Nella finestra di dialogo Nuove proprietà Registro di sistema selezionare i valori indicati di seguito:

  • Azione: Crea
  • Hive: HKEY_LOCAL_MACHINE
  • Percorso chiave: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
  • Nome valore: SMB1
  • Tipo valore: REG_DWORD
  • Dati valore: 0

Nuova proprietà del Registro di sistema - generale

Queste impostazioni consentono di disabilitare il componenti del server SMBv1. È necessario applicare questi Criteri di gruppo a tutte le workstation, i server e i controller di dominio del dominio.

Nota: è possibile impostare anche filtri WMI per escludere i sistemi operativi non supportati o per specificare determinate esclusioni, ad esempio Windows XP. 

Disabilitare il client SMBv1 tramite i Criteri di gruppo


Per disabilitare il client SMBv1, è necessario aggiornare la chiave del Registro di sistema del servizio per disattivare l'avvio di MRxSMB10. Si deve quindi rimuovere la dipendenza da MRxSMB10 dall'elemento LanmanWorkstation, in modo che tale elemento venga avviato normalmente, senza necessità di avviare prima MRxSMB10.

In questo modo è possibile aggiornare e sostituire i valori predefiniti nei due elementi del registro di sistema indicati di seguito.


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10

Elemento del Registro di sistema: Start REG_DWORD: 4 = Disabilitato

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation

Elemento del Registro di sistema: DependOnService REG_MULTI_SZ: “Bowser”,”MRxSmb20″,”NSI”


Nota: nel valore predefinito era in precedenza incluso MRxSMB10, ora rimosso come dipendenza


Per la configurazione tramite i Criteri di gruppo:

  1. Avviare la Console Gestione Criteri di gruppo. Fare clic con il pulsante destro del mouse sull'oggetto Criteri di gruppo (GPO), che dovrebbe contenere il nuovo elemento di preferenza, quindi fare clic su Modifica.
  2. Nell'albero della console, in Configurazione computer espandere la cartella Preferenze e quindi la cartella Impostazioni di Windows.
  3. Fare clic con il pulsante destro del mouse sul nodo del Registro di sistema, scegliere Nuovo e selezionare Elemento Registro di sistema.

Voce del Registro di sistema - nuovo - registro di sistema

Nella finestra di dialogo Nuove proprietà Registro di sistema selezionare i valori indicati di seguito:

  • Azione: Aggiorna
  • Hive: HKEY_LOCAL_MACHINE
  • Percorso chiave: SYSTEM\CurrentControlSet\services\mrxsmb10
  • Nome valore: Start
  • Tipo valore: REG_DWORD
  • Dati valore: 4

Proprietà Start - generale

Rimuovere quindi la dipendenza da MRxSMB10 appena disabilitata.

Nella finestra di dialogo Nuove proprietà Registro di sistema selezionare i valori indicati di seguito:

  • Azione: Sostituisci
  • Hive: HKEY_LOCAL_MACHINE
  • Percorso chiave: SYSTEM\CurrentControlSet\Services\LanmanWorkstation
  • Nome valore: DependOnService
  • Tipo valore REG_MULTI_SZ
  • Dati valore:
    • Bowser
    • MRxSmb20
    • NSI

Nota: queste tre stringhe non disporranno di un elenco puntato (vedere la schermata seguente).

Proprietà DependOnService

In molte versioni di Windows, il valore predefinito include MRxSMB10, sostituendo questo valore con la stringa multivalore, si rimuove di fatto MRxSMB10 come dipendenza per LanmanServer e si riducono i valori predefiniti da quattro a tre, corrispondenti ai valori sopra elencati.

Nota: quando si utilizza la console di gestione dei Criteri di gruppo, non è necessario utilizzare virgolette o virgole. È sufficiente digitare ogni elemento su singole righe.

Riavviare l'applicazione

Dopo l'applicazione dei criteri e la configurazione delle impostazioni del registro di sistema, prima di disabilitare SMB v1 è necessario riavviare i sistemi interessati.

Riepilogo

Se tutte le impostazioni si trovano nello stesso oggetto Criteri di gruppo (GPO), Gestione criteri di gruppo mostra le impostazioni indicate di seguito.

Editor Gestione criteri di gruppo - Registro di sistema

Test e convalida

Al termine della configurazione, consentire la replica e l'aggiornamento dei criteri. Come richiesto dal test, eseguire gpupdate /force tramite un prompt di comando e quindi esaminare i computer interessati per assicurarsi che le impostazioni del registro di sistema siano state applicate correttamente. Assicurarsi che SMB v2 e SMB v3 siano in funzione per tutti gli altri sistemi dell'ambiente.