Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo descreve como habilitar e desabilitar o SMB (Server Message Block) versão 1 (SMBv1), o SMB versão 2 (SMBv2) e o SMB versão 3 (SMBv3) em componentes de cliente e servidor SMB.
Se você desabilitar ou remover o SMBv1, poderá encontrar problemas de compatibilidade com computadores ou softwares antigos. SMBv1 tem vulnerabilidades de segurança significativas e, recomendamos fortemente que você não o use. SMBv1 não é instalado por padrão em nenhuma edição do Windows 11 ou Windows Server 2019 e versões posteriores. O SMBv1 também não está instalado por padrão no Windows 10, exceto nas edições Home e Pro. Recomendamos que, em vez de reinstalar o SMBv1, atualize o servidor SMB que ainda o requer. Para obter uma lista de parceiros que exigem o SMBv1 e suas atualizações que removem o requisito, consulte SMB1 Product Clearinghouse.
É recomendável manter o SMBv2 e o SMBv3 habilitados, mas talvez seja útil desabilitar um deles temporariamente para solucionar problemas. Para obter mais informações, consulte Usar a linha de comando ou o Editor do Registro para gerenciar protocolos SMB.
Desabilitar o SMBv3 desativa a seguinte funcionalidade:
- Failover transparente: fornece aos clientes uma maneira de se reconectar sem interrupção aos nós de cluster durante a manutenção ou failover
- Expansão: fornece acesso simultâneo a dados compartilhados em todos os nós de cluster de arquivos
- SMB Multichannel: facilita a agregação de largura de banda de rede e tolerância a falhas se vários caminhos estiverem disponíveis entre o cliente e o servidor
- SMB Direct: adiciona suporte à rede RDMA (acesso remoto direto à memória) para alto desempenho, com baixa latência e baixo uso de CPU
- Criptografia: fornece criptografia de ponta a ponta e oferece proteção contra espionagem em redes não confiáveis
- Locação de diretório: melhora os tempos de resposta do aplicativo nas filiais por meio do cache
- Otimização de desempenho: otimiza pequenas operações aleatórias de E/S de leitura/gravação
Desabilitar o SMBv2 desativa a seguinte funcionalidade:
- Composição de solicitação: dá suporte ao envio de várias solicitações SMBv2 como uma única solicitação de rede
- Leituras e gravações maiores: melhora o uso de redes mais rápidas
- Cache de propriedades de pasta e arquivo: fornece aos clientes a capacidade de manter cópias locais de pastas e arquivos
- Alças duráveis: fornecem uma forma de a conexão se reconectar de maneira transparente ao servidor após uma desconexão temporária.
- Assinatura de mensagem aprimorada: usa um algoritmo seguro HMAC (código de autenticação de mensagens) baseado em hash (SHA) com uma digestão de 256 bits (HMAC SHA-256) em lugar do Algoritmo Message-Digest 5 (MD5) como algoritmo de hash.
- Escalabilidade aprimorada para compartilhamento de arquivos: aumenta consideravelmente o número de usuários, compartilhamentos e arquivos abertos por servidor
- Suporte para links simbólicos
- Modelo de concessão de oplock do cliente: limita os dados transferidos entre o cliente e o servidor, aprimorando o desempenho em redes de alta latência e aumentando a escalabilidade do servidor SMB
- Suporte a MTU (unidade de transmissão máxima grande): dá suporte ao uso completo de 10 GbE (Gigabit Ethernet)
- Eficiência de energia aprimorada: prevê uma maneira para que os clientes que têm arquivos abertos em um servidor possam entrar em modo de repouso.
O protocolo SMBv2 foi introduzido no Windows Vista e no Windows Server 2008. O protocolo SMBv3 foi introduzido no Windows 8 e no Windows Server 2012. Para saber mais sobre esses recursos do SMBv2 e do SMBv3, confira seguintes artigos:
- Visão geral do compartilhamento de arquivos usando o protocolo SMB 3 no Windows Server
- 1.3 Visão geral
Você pode usar os comandos PowerShell Get-WindowsOptionalFeature, Disable-WindowsOptionalFeature, e Enable-WindowsOptionalFeature para detectar, desabilitar e habilitar um cliente ou servidor SMBv1. Execute os comandos em um prompt de comando com privilégios elevados.
Observação
O computador é reiniciado depois que você executa os comandos do PowerShell para desabilitar ou habilitar o SMBv1.
Detectar:
Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Desabilite:
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Habilitar:
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Dica
É possível detectar o status SMBv1 sem elevação executando o comando Get-SmbServerConfiguration: Get-SmbServerConfiguration | Format-List EnableSMB1Protocol
.
O SMBv1 não é instalado por padrão no Windows Server 2019 e versões posteriores. Em versões anteriores do Windows Server, você pode usar o Gerenciador de Servidores para remover o SMBv1:
No servidor do qual você deseja remover o SMBv1, abra o Gerenciador do Servidor.
No Painel do Gerenciador do Servidor, em Configurar este servidor local, selecione Adicionar funções e recursos.
Na página Antes de começar, selecione Iniciar o Assistente de Remoção de Funções e Recursos e, na página seguinte, selecione Avançar.
Na página Selecionar servidor de destino, em Pool de Servidores, verifique se o servidor do qual você deseja remover o recurso está selecionado e selecione Próximo.
Na página Remover funções de servidor, selecione Avançar.
Na página Remover recursos, desmarque a caixa de seleção para Suporte ao Compartilhamento de Arquivos SMB 1.0/CIFS e selecione Avançar.
Na página Confirmar as seleções de remoção, confirme se o recurso está listado e, em seguida, selecione Remover.
Começando com o Windows 10 Fall Creators Update e o Windows Server 2019, o SMBv1 não está mais instalado por padrão. Para obter mais informações, consulte SMBv1 não está instalado por padrão no Windows 10 versão 1709, Windows Server versão 1709, e versões posteriores.
Quando você habilitar ou desabilitar o SMBv2 no Windows 8 ou no Windows Server 2012, o SMBv3 também será habilitado ou desabilitado. Esse comportamento ocorre porque esses protocolos compartilham a mesma pilha.
Você pode usar o cmdlet Set-SMBServerConfiguration para habilitar ou desabilitar os protocolos SMBv1, SMBv2 e SMBv3 em um componente do servidor. Você pode usar o cmdlet Get-SmbServerConfiguration para recuperar a configuração do servidor SMB.
Não é necessário reiniciar o computador depois de executar o cmdlet Set-SMBServerConfiguration.
Detectar:
Get-SmbServerConfiguration | Select EnableSMB1Protocol
Desabilite:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
Habilitar:
Set-SmbServerConfiguration -EnableSMB1Protocol $true
Para mais informações, consulte Pare de usar o SMB1.
Detectar:
Get-SmbServerConfiguration | Select EnableSMB2Protocol
Desabilite:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
Habilitar:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Habilitar ou desabilitar o SMB no Windows 7, Windows Server 2008 R2, Windows Vista e Windows Server 2008
Para habilitar ou desabilitar protocolos SMB em um servidor SMB que executa o Windows 7, Windows Server 2008 R2, Windows Vista ou Windows Server 2008, use o Windows PowerShell ou o Editor do Registro, conforme explicado nas seções a seguir.
Você pode usar os cmdlets Get-Item, Get-ItemPropertye Set-ItemProperty para detectar, habilitar e desabilitar protocolos SMB.
Observação
Os comandos nas seções a seguir exigem o PowerShell 2.0 ou posterior.
Detectar:
Get-Item HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}
A configuração padrão é
Enabled
. Como resultado, nenhum valor nomeado do Registro é criado, portanto, o comando não retorna um valorSMB1
.Desabilite:
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
Observação
É necessário reiniciar o computador após fazer essas alterações.
Para mais informações, consulte Pare de usar o SMB1.
Detectar:
Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}
Desabilite:
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
Observação
É necessário reiniciar o computador após fazer essas alterações.
Importante
Siga as etapas nesta seção com cuidado. Problemas sérios podem ocorrer se você modificar o Registro incorretamente. Antes de modificá-lo, faça backup do Registro para a restauração em caso de problemas.
Para habilitar ou desabilitar o SMBv1 em um servidor SMB, abra o Editor do Registro e acesse o seguinte caminho de chave do Registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Configure uma entrada que tenha as seguintes propriedades:
- Para o nome, use SMB1.
- Para o tipo, use REG_DWORD.
- Para os dados, use 0 para Desabilitado e 1 para Habilitado. O valor padrão é 1ou Habilitado. Nesse caso, nenhuma chave do Registro é criada.
Para habilitar ou desabilitar o SMBv2 em um servidor SMB, abra o Editor do Registro e acesse o seguinte caminho de chave do Registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Configure uma entrada que tenha as seguintes propriedades:
- Para o nome, use SMB2.
- Para o tipo, use REG_DWORD.
- Para os dados, use 0 para Desabilitado e 1 para Habilitado. O valor padrão é 1ou Habilitado. Nesse caso, nenhuma chave do Registro é criada.
Observação
É necessário reiniciar o computador após fazer essas alterações.
Esta seção mostra como usar a Política de Grupo para desabilitar o SMBv1. Você pode usar esse método em várias versões do Windows.
Você pode desabilitar o SMBv1 em um servidor SMB configurando o seguinte novo item no registro:
- Caminho da chave: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
- Entrada do Registro: SMB1
- Tipo de entrada: REG_DWORD
- Dados de entrada: 0, para Desabilitado
Para usar a Política de Grupo para configurar este item, execute as seguintes etapas:
Abra o Console de Gerenciamento de Política de Grupo. Clique com o botão direito do mouse no GPO (objeto de Política de Grupo) que deve conter o novo item de preferência e selecione Editar.
Na árvore de console em Configuração do Computador, expanda a pasta Preferências e, em seguida, expanda a pasta Configurações do Windows.
Clique com o botão direito no nó Registro, aponte para Novo e selecione Item do Registro.
Na caixa de diálogo Novas Propriedades do Registro, selecione ou insira os seguintes valores:
- Ação: Criar
- Hive: HKEY_LOCAL_MACHINE
- Caminho da chave: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
- Nome do valor: SMB1
- Tipo do valor: REG_DWORD
- Dados de valor: 0
Este procedimento desabilita os componentes do servidor SMBv1. Você deve aplicar essa política a todas as estações de trabalho, servidores e controladores de domínio necessários no domínio.
Observação
Você pode definir filtros da WMI (Instrumentação de Gerenciamento do Windows) para excluir sistemas operacionais específicos ou excluir sistemas operacionais cliente ou servidor. Para obter mais informações, consulte Filtragem de Política de Grupo e Criar Filtros WMI para o GPO.
Importante
Alguns sistemas exigem acesso à pasta SYSVOL ou a outros compartilhamentos de arquivos, mas não dão suporte a SMBv2 ou SMBv3. Exemplos desses sistemas incluem sistemas Windows herdados e sistemas Linux e parceiros mais antigos. Tenha cuidado ao desabilitar o SMBv1 em controladores de domínio nesses sistemas.
Para determinar quais clientes tentam se conectar a um servidor SMB usando o SMBv1, você pode habilitar a auditoria em clientes Windows Server e Windows. Para habilitar ou desabilitar a auditoria, use o cmdlet Set-SmbServerConfiguration. Para verificar o status de auditoria, use o cmdlet Get-SmbServerConfiguration.
Habilitar:
Set-SmbServerConfiguration -AuditSmb1Access $true
Desabilite:
Set-SmbServerConfiguration -AuditSmb1Access $false
Detectar:
Get-SmbServerConfiguration | Select AuditSmb1Access
Após habilitar a auditoria do SMBv1, é possível verificar o log de eventos Microsoft-Windows-SMBServer\Audit
quanto a eventos de acesso. Sempre que um cliente tenta usar o SMBv1 para se conectar a um servidor, uma entrada que tem uma ID de evento de 3000 aparece no log.
Se todas as configurações estiverem no mesmo GPO, o Gerenciamento de Política de Grupo exibirá as seguintes configurações:
Depois de concluir as etapas de configuração no Console de Gerenciamento de Política de Grupo, dê tempo à Política de Grupo para aplicar as atualizações às suas configurações. Se necessário para teste, execute gpupdate /force
em um prompt de comando e examine os computadores de destino para garantir que as configurações do Registro sejam aplicadas corretamente. Verifique se o SMBv2 e o SMBv3 estão funcionando para todos os outros sistemas no ambiente.
Observação
Depois de testar a política, reinicie os sistemas de destino.