Cómo detectar, habilitar y deshabilitar SMBv1, SMBv2 y SMBv3 en Windows y Windows Server
En este artículo se describe cómo habilitar y deshabilitar Bloque de mensajes del servidor (SMB) versión 1 (SMBv1), SMB versión 2 (SMBv2) y versión SMB 3 (SMBv3) en los componentes de servidor y cliente SMB.
Advertencia
Se recomienda no deshabilitar los protocolos SMBv2 ni SMBv3. Deshabilite SMBv2 o SMBv3 únicamente como una medida temporal de resolución de problemas. No deje SMBv2 ni SMBv3 deshabilitados.
En Windows 7 y Windows Server 2008 R2, al deshabilitar SMBv2, se desactiva la siguiente funcionalidad:
- Unificación de solicitudes: permite enviar varias solicitudes SMBv2 como una sola solicitud de red
- Mayores lecturas y escrituras: mejor utilización de redes más rápidas
- Almacenamiento en caché de propiedades de carpetas y archivos: los clientes pueden conservar copias locales de carpetas y archivos
- Identificadores duraderos: permite que la conexión se vuelva a conectar de forma transparente al servidor si se produce una desconexión temporal
- Mejora de la firma de mensajes: HMAC SHA-256 sustituye a MD5 como el algoritmo hash
- Escalabilidad mejorada para el uso compartido de archivos: se ha aumentado en gran medida el número de usuarios, recursos compartidos y archivos abiertos por servidor
- Compatibilidad con vínculos simbólicos
- Modelo de concesión de bloqueo oportunista del cliente: limita los datos transferidos entre el cliente y el servidor, con lo que se mejora el rendimiento en redes de alta latencia y se aumenta la escalabilidad del servidor SMB
- Compatibilidad con MTU de gran tamaño: para aprovechar por completo la Ethernet de 10 gigabytes (GB)
- Mejor eficiencia energética: los clientes que tengan archivos abiertos en un servidor pueden entrar en suspensión
- Conmutación por error transparente: el cliente se vuelve a conectar sin interrupción a los nodos del clúster durante el mantenimiento o la conmutación por error
- Escalar horizontalmente: acceso simultáneo a datos compartidos en todos los nodos del clúster de archivos
- Multicanal: agregación del ancho de banda de la red y tolerancia a errores si hay varias rutas disponibles entre el cliente y el servidor
- SMB directo: incorpora compatibilidad de red con RDMA para obtener un rendimiento muy elevado, con baja latencia y un reducido uso de la CPU
- Cifrado: proporciona cifrado integral y protege frente a programas de escucha en redes que no sean de su confianza
- Concesión de directorio: mejora los tiempos de respuesta de las aplicaciones en sucursales mediante el almacenamiento en caché
- Optimizaciones de rendimiento: optimizaciones para pequeñas E/S de lectura/escritura aleatorias
Más información
Por su parte, el protocolo SMBv3 se incluyó por primera vez en Windows 8 y en Windows Server 2012.
Para obtener más información sobre las funciones de SMBv2 y SMBv3, visite los siguientes sitios web de Microsoft TechNet:
Cómo eliminar SMBv1 correctamente en Windows 8.1, Windows 10, Windows 2012 R2 y Windows Server 2016
Windows Server 2012 R2 y 2016: Métodos de PowerShell
SMB v1
Detectar: |
Get-WindowsFeature FS-SMB1 |
Deshabilitar: |
Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol |
Habilitar: |
Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol |
SMB v2/v3
Detectar: |
Get-SmbServerConfiguration | Seleccionar EnableSMB2Protocol |
Deshabilitar: |
Set-SmbServerConfiguration -EnableSMB2Protocol $false |
Habilitar: |
Set-SmbServerConfiguration -EnableSMB2Protocol $true |
Windows Server 2012 R2 y
Windows Server 2016: Método de
Server Manager para
deshabilitar SMB
SMB v1
Windows 8.1 y Windows 10:
Método de PowerShell
Protocolo SMB v1
Protocolo SMB v2/v3
Windows 8.1 y Windows 10:
método de Agregar o quitar
programas
Cómo detectar el estado y habilitar y deshabilitar los protocolos SMB en el servidor SMB
En Windows 8 y Windows Server 2012
Windows 8 y Windows Server 2012 incluyen el nuevo cmdlet de Windows PowerShell Set-SMBServerConfiguration. Este cmdlet le permite habilitar o deshabilitar los protocolos SMBv1, SMBv2 y SMBv3 en el componente de servidor.
Nota:
Cuando habilite o deshabilite SMBv2 en Windows 8 o Windows Server 2012, SMBv3 también se habilitará o deshabilitará. Este comportamiento se produce porque estos protocolos comparten la misma pila.
No hace falta reiniciar el
equipo tras ejecutar el cmdlet Set-SMBServerConfiguration.
SMB v1 en un servidor SMB
Para obtener más información, consulte Almacenamiento de servidores en Microsoft.
SMB v2/v3 en un servidor SMB
En Windows 7, Windows Server
2008 R2, Windows Vista y Windows
Server 2008
Para habilitar o deshabilitar protocolos SMB en un servidor SMB Server en el que se ejecute Windows 7, Windows Server 2008 R2, Windows Vista o Windows Server 2008, utilice Windows PowerShell o el Editor del Registro.
Métodos de PowerShell
Nota
Para este método se requiere PowerShell 2.0 o la versión más reciente de PowerShell.
SMB v1 en un servidor SMB
Detectar:
Get-Item HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}
Configuración predeterminada = Habilitado (no se crea ninguna clave de registro), por lo que no se devolverá ningún valor de SMB1
Deshabilitar:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 –Force
Habilitar:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 1 –Force
Nota: una vez
realizados estos cambios, debe
reiniciar el equipo.
Para obtener más información, consulte Almacenamiento de servidores en Microsoft.
SMB v2/v3 en un servidor SMB
Detectar:
Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}
Deshabilitar:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 0 –Force
Habilitar:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 –Force
Nota: una vez
realizados estos cambios, debe
reiniciar el equipo.
Editor del Registro
Para habilitar o deshabilitar SMBv1 en el servidor SMB, configure la siguiente clave del Registro:
Entrada del Registro: SMB1
REG_DWORD: 0 = deshabilitado
REG_DWORD: 1 = habilitado
Valor predeterminado: 1 = habilitado (no se crea ninguna clave de Registro)
Para habilitar o deshabilitar SMBv2 en el servidor SMB, configure la siguiente clave del Registro:
Entrada del Registro: SMB2
REG_DWORD: 0 = deshabilitado
REG_DWORD: 1 = habilitado
Valor predeterminado: 1 = habilitado (no se crea ninguna clave de registro)
Nota Una
vez realizados estos cambios,
debe reiniciar el equipo.
Cómo detectar el estado y habilitar y deshabilitar los protocolos SMB en el cliente SMB
Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8 y Windows Server 2012
Nota: cuando habilite o deshabilite SMBv2 en Windows 8 o Windows Server 2012, SMBv3 también se habilitará o deshabilitará. Este comportamiento se produce porque estos protocolos comparten la misma pila.
SMB v1 en un cliente de SMB
Detectar: | sc.exe qc lanmanworkstation |
Deshabilitar: | sc.exe config
lanmanworkstation
depend=
bowser/mrxsmb20/nsi sc.exe config mrxsmb10 start= disabled |
Habilitar: | sc.exe config
lanmanworkstation
depend=
bowser/mrxsmb10/mrxsmb20/nsi sc.exe config mrxsmb10 start= auto |
Para obtener más información,
consulte Almacenamiento
de servidores en Microsoft.
SMB v2/v3 en un cliente de SMB
Detectar: | sc.exe qc lanmanworkstation |
Deshabilitar: | sc.exe config
lanmanworkstation
depend=
bowser/mrxsmb10/nsi sc.exe config mrxsmb20 start= disabled |
Habilitar: | sc.exe config
lanmanworkstation
depend=
bowser/mrxsmb10/mrxsmb20/nsi sc.exe config mrxsmb20 start= auto |
Notas
- Debe ejecutar estos comandos en un símbolo del sistema con privilegios elevados.
- Una vez realizados estos cambios, debe reiniciar el equipo.
Deshabilitar el servidor de SMBv1 con la directiva de grupo
Este método configurará el siguiente nuevo elemento en el registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Configurarlo mediante la
directiva de grupo:
- Abra la Consola de administración de directivas de grupo (GPMC). Haga clic con el botón derecho en el objeto de directiva de grupo (GPO) que debe contener el nuevo elemento de preferencia y luego haga clic en Editar.
- En el árbol de la consola, bajo Configuración del equipo, expanda la carpeta Preferencias y luego la carpeta Configuración de Windows.
- Haga
clic con el
botón derecho en
el nodo Registro,
haga clic en Nuevo
y seleccione Elemento
del Registro.
En el cuadro de diálogo Nuevas propiedades de Registro, seleccione lo siguiente:
- Acción: Crear
- Subárbol: HKEY_LOCAL_MACHINE
- Ruta de la clave: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
- Nombre del valor: SMB1
- Tipo de valor: REG_DWORD
- Información del valor: 0
Esto deshabilita los componentes del servidor de SMBv1. Esta directiva de grupo se debe aplicar en todas las estaciones de trabajo, servidores y controladores de dominio necesarios del dominio.
Nota Los filtros WMI también se pueden configurar para que excluyan algunos sistemas operativos seleccionados o que ya no sean compatibles, tales como Windows XP.
Precaución:
Tenga cuidado al realizar estos cambios en los controladores de dominio en los que los sistemas Windows XP o sistemas Linux y de terceros heredados (que no admiten SMBv2 o SMBv3) necesiten acceso a SYSVOL u otros recursos compartidos de archivo en los que SMB v1 se deshabilite.
Deshabilitar el cliente de SMBv1 con la directiva de grupo
Para deshabilitar el cliente de SMBv1, la clave del Registro de servicios se debe actualizar para deshabilitar el inicio de MRxSMB10 y luego la dependencia en MRxSMB10 se debe quitar de la entrada de LanmanWorkstation de modo que se pueda iniciar con normalidad sin requerir que MRxSMB10 se inicie primero.
De este modo, se actualizarán y reemplazarán los valores predeterminados en los siguientes dos elementos del registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10
Entrada del Registro: Inicio REG_DWORD: 4 = Deshabilitado
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation
Nota El valor
predeterminado que incluía
MRxSMB10 se ha eliminado como
dependencia
Configurarlo mediante la
directiva de grupo:
- Abra la Consola de administración de directivas de grupo (GPMC). Haga clic con el botón derecho en el objeto de directiva de grupo (GPO) que debe contener el nuevo elemento de preferencia y luego haga clic en Editar.
- En el árbol de la consola, bajo Configuración del equipo, expanda la carpeta Preferencias y luego la carpeta Configuración de Windows.
- Haga clic con el botón derecho en el nodo Registro, haga clic en Nuevo y seleccione Elemento del Registro.
En el cuadro de diálogo Nuevas propiedades de Registro, seleccione lo siguiente:
- Acción: Actualización
- Subárbol: HKEY_LOCAL_MACHINE
- Ruta de la clave: SYSTEM\CurrentControlSet\services\mrxsmb10
- Nombre del valor: Inicio
- Tipo de valor: REG_DWORD
- Información del valor: 4
Luego, quite la dependencia del valor MRxSMB10 que se acaba de deshabilitar.
En el cuadro de diálogo Nuevas propiedades de Registro, seleccione lo siguiente:
- Acción: Reemplazar
- Subárbol: HKEY_LOCAL_MACHINE
- Ruta de la clave: SYSTEM\CurrentControlSet\Services\LanmanWorkstation
- Nombre del valor: DependOnService
- Tipo de valor REG_MULTI_SZ
- Información del
valor:
- Bowser
- MRxSmb20
- NSI
Nota Estas tres cadenas no tendrán viñetas (consulte la siguiente captura de pantalla).
El valor predeterminado incluye MRxSMB10 en muchas versiones de Windows. Por lo tanto, al reemplazarlos por esta cadena de varios valores, en realidad se quita MRxSMB10 como dependencia para LanmanServer y pasa de cuatro valores predeterminados a estos tres valores indicados anteriormente.
Nota Cuando use la Consola de administración de directivas de grupo, no tiene que usar ni comillas ni comas. Simplemente escriba cada entrada en líneas individuales.
Es necesario reiniciar
Cuando se haya aplicado la directiva y se hayan configurado las opciones del registro, los sistemas de destino se deben reiniciar antes de deshabilitar SMB v1.
Resumen
Si esta configuración se encuentra en el mismo Objeto de directiva de grupo (GPO), la Administración de directivas de grupo mostrará la configuración que se indica abajo.
Pruebas y validación
Cuando se hayan configurado, permita que la directiva se replique y actualice. Para llevar a cabo las pruebas, ejecute gpupdate /force desde un símbolo del sistema y revise los equipos de prueba para asegurarse de que la configuración de registro se aplica correctamente. Asegúrese de que SMB v2 y SMB v3 funcionan para todos los demás sistemas del entorno.
Precaución:
No olvide reiniciar los sistemas de destino.