Riepilogo
Warning
Si consigliabile di non disattivare SMBv2 o SMBv3. Disabilitare SMBv2 o SMBv3 esclusivamente come misura temporanea per la risoluzione dei problemi. Non lasciare SMBv2 o SMBv3 disabilitato.
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
- 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 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
Windows 8.1 e Windows 10: Metodo PowerShell
Protocollo SMB v1
Protocollo SMB v2/v3
Rilevamento: | Get-SmbServerConfiguration | Select EnableSMB2Protocol |
Disabilitazione: | Set-SmbServerConfiguration -EnableSMB2Protocol $false |
Abilitazione: | Set-SmbServerConfiguration -EnableSMB2Protocol $true |
Windows 8.1 e Windows 10: tramite Installazione applicazioni
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.
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.
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
Nota
Questo metodo richiede PowerShell 2.0 o versione successiva.
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
Per abilitare o disabilitare SMBv1 nel server SMB, configura la seguente chiave del Registro di sistema:
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:
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
Per la configurazione tramite i Criteri di gruppo:
- 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.
- Nell'albero della console, in Configurazione computer espandere la cartella Preferenze e quindi la cartella Impostazioni di Windows.
- Fare clic con il pulsante destro del mouse sul nodo del Registro di sistema, scegliere Nuovo e selezionare Elemento 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
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.
Attenzione
Prestare molta attenzione quando si apportano le modifiche in controller di dominio in cui sistemi operativi legacy Windows XP, sistemi Linux meno recenti o sistemi diterze parti (che non supportano SMBv2 o SMBv3) richiedono accesso a SYSVOL o ad altre condivisioni di file in cui è disabilitato SMB v1.
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
Nota: nel valore predefinito era in precedenza incluso MRxSMB10, ora rimosso come dipendenza
Per la configurazione tramite i Criteri di gruppo:
- 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.
- Nell'albero della console, in Configurazione computer espandere la cartella Preferenze e quindi la cartella Impostazioni di Windows.
- Fare clic con il pulsante destro del mouse sul nodo del Registro di sistema, scegliere Nuovo e selezionare Elemento 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
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).
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.
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.
Attenzione
Non dimenticare di riavviare i sistemi interessati.