
Протокол обмена файлами Server Message Block (SMB) 1.0 отключен по умолчанию в последних версиях Windows 11 и 10, а также в Windows Server 2019/2022. Эта версия протокола небезопасна (уязвима) и не рекомендуется для использования в сетевом окружении. Windows поддерживает более безопасные версии протокола SMB (2.x и 3.x).
SMB v1 может понадобиться только в том случае, если в вашей сети все еще есть устаревшие устройства Windows XP/2003, старые версии NAS, сетевые принтеры с поддержкой SMB, устройства под управлением старых версий Samba и т. д. В этой статье мы рассмотрим, как включить или отключить протокол совместного доступа к файлам SMB 1.0 в Windows.
Обратите внимание, что протокол SMB состоит из двух компонентов, которые могут быть включены или отключены по отдельности:
- Клиент SMB 1.0 — используется для доступа к общим папкам на других компьютерах;
- Сервер SMB 1.0 — включается, если ваш компьютер используется в качестве файлового сервера для других компьютеров и устройств.
Как включить или отключить SMB 1.0 в Windows 10 и 11
Начиная с Windows 10 1709, SMB 1.0 отключен по умолчанию во всех настольных версиях Windows, но его можно включить вручную.
Откройте командную строку и проверьте состояние компонентов протокола SMBv1 в Windows с помощью команды DISM:
Dism /online /Get-Features /format:table | find "SMB1Protocol"
В этом примере видно, что все функции SMBv1 отключены:
SMB1Protocol | Disabled SMB1Protocol-Client | Disabled SMB1Protocol-Server | Disabled SMB1Protocol-Deprecation | Disabled
В Windows 10 и 11 вы также можете управлять функциями SMB 1 из панели управления (optionalfeatures.exe
). Разверните Поддержка совместного доступа к файлам SMB 1.0 /CIFS опция. Доступны три функции SMB v 1.0:
- Автоматическое удаление SMB 1.0/CIFS
- Клиент SMB 1.0/CIFS
- Сервер SMB 1.0/CIFS
SMB Client v1.0 необходимо установить, если компьютеру требуется доступ к общим папкам, размещенным на устаревших устройствах. Если устаревшие сетевые устройства должны получать доступ к сетевым папкам на вашем компьютере или использовать его общие сетевые принтеры, необходимо включить сервер SMB 1.0.
Вы можете включить клиент или сервер SMB 1.0 в Windows 10/11 из диалогового окна «Возможности Windows» или с помощью команд:
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol"
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol-Client"
Dism /online /Enable-Feature /FeatureName:"SMB1Protocol-Server"
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Server
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client
После включения клиента SMBv1 он автоматически удаляется, если не используется более 15 дней.
Выполните следующие команды DISM, чтобы отключить SMB 1.0 в Windows:
Dism /online /Disable-Feature /FeatureName:"SMB1Protocol"
Dism /online /Disable-Feature /FeatureName:"SMB1Protocol-Client"
Dism /online /Disable-Feature /FeatureName:"SMB1Protocol-Server"
Или используйте PowerShell для удаления компонентов SMB1Protocol:
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -Remove
Если вы отключили клиент SMBv1 в Windows 10/11, вы можете получить следующие ошибки при доступе к общей папке на файловом сервере, который поддерживает только SMBv1:
-
0x80070035 The network path was not found;
-
Unable to connect to file shares because it is not secure. This share requires the obsolete SMB1 protocol, which is not secure and could expose your system to attacks;
-
You can’t connect to the file share because it’s not secure. This share requires the obsolete SMB1 protocol, which is unsafe and could expose your system to attack. Your system requires SMB2 or higher.
Более подробно об этом рассказывается в статье «Невозможно получить доступ к общим папкам в Windows».
[Компьютерный браузер Служба также перестанет работать на вашем компьютере, если вы отключите клиент SMBv1 (он используется устаревшим протоколом NetBIOS для обнаружения устройств в сети).Чтобы просматривать соседние компьютеры в сети Windows, вам нужно настроить Функция Хост поставщика услуг обнаружения служба (см. эту статью).
Включение или отключение протокола SMB 1.0 на Windows Server 2019/2022
Компоненты протокола SMBv1 также отключены по умолчанию в Windows Server 2019 и 2022. Установить SMB v1 можно с помощью диспетчера сервера (Поддержка общего доступа к файлам SMB 1.0/CIFS функция) или PowerShell.
Используйте команду PowerShell, чтобы проверить, включен ли SMB 1.0 на Windows Server:
Get-WindowsFeature | Where-Object {$_.name -eq "*SMB1*"} | ft Name,Installstate
Чтобы установить Клиент SMB 1.0, используйте команду:
Install-WindowsFeature FS-SMB1-CLIENT
Включить Сервер SMB 1.0:
Install-WindowsFeature FS-SMB1-SERVER
Проверьте, включен ли протокол SMB1 в настройках файлового сервера. Включите протокол, если он отключен:
Get-SmbServerConfiguration | select EnableSMB1Protocol
Set-SmbServerConfiguration -EnableSMB1Protocol $true -Force
EnableSMB1Protocol: True
, то этот сервер поддерживает доступ к общим папкам от клиентов SMB 1.0.Чтобы отключить SMBv1 (требуется перезагрузка):
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Чтобы полностью удалить компоненты SMB1 из образа Windows:
Uninstall-WindowsFeature -Name FS-SMB1 -Remove
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled

Аудит доступа к SMB 1.0 на файловых серверах Windows
Прежде чем отключать и полностью удалять драйвер SMB 1.0 на стороне файлового сервера, следует убедиться, что в сети нет устаревших клиентов, использующих протокол SMB v1.0 для подключения к общим папкам. Чтобы найти таких клиентов, необходимо включить аудит доступа к файловому серверу по протоколу SMB1:
Set-SmbServerConfiguration –AuditSmb1Access $true
Через несколько дней откройте программу просмотра событий на сервере, проверьте журнал Приложения и службы -> Microsoft -> Windows -> SMBServer -> Аудит, и проверьте попытки доступа к файловому серверу по протоколу SMB1.
Get-WinEvent -LogName Microsoft-Windows-SMBServer/Audit
Проверьте журналы Event Viewer и найдите запись с идентификатором EventID 3000 из SMBServer источник, который указывает, что клиент 192.168.1.10 пытается получить доступ к серверу по протоколу SMB1.
SMB1 access Client Address: 192.168.1.10 Guidance: This event indicates that a client attempted to access the server using SMB1. To stop auditing SMB1 access, use the Windows PowerShell cmdlet Set-SmbServerConfiguration.
Найдите в сети компьютер или устройство с таким IP-адресом. Если возможно, обновите операционную систему или микропрограмму до версии, поддерживающей более безопасные протоколы SMBv2 или SMBv3. Если вы не можете обновить такого клиента, вам придется включить SMBv1 на вашем файловом сервере.
Чтобы найти все компьютеры в Active Directory с включенным SMB v1, выполните команду:
Get-ADComputer -Filter {(enabled -eq $True) } | % {Invoke-Command -ComputerName $_.DNSHostName -scriptblock {If ( (Get-ItemProperty -path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters").SMB1 -eq 1 ) {Write-Output "SMBv1 is enabled on ${env:computername}"}}}
Эта команда использует команду Get-ADComputer для получения списка включенных компьютеров в домене. Затем она использует Invoke-Command для подключения к каждому компьютеру через PowerShell Remoting и проверяет, включен ли SMB 1.0.
Отключение SMB 1.0 с помощью групповой политики
Если в вашей сети нет устаревших устройств, поддерживающих только SMB 1.0, вы должны полностью отключить эту версию протокола на всех компьютерах. Вы можете применить GPO, который принудительно отключает протокол SMB 1.0, чтобы пользователи не могли вручную устанавливать и включать функции SMB 1.0 на своих компьютерах. Поскольку в стандартных шаблонах групповой политики Windows нет отдельной политики настройки SMB, вам придется отключить его с помощью политики реестра.
- Откройте консоль управления групповой политикой (
gpmc.msc
), создайте новый GPO (disableSMBv1), и привяжите его к OU, содержащему компьютеры, на которых вы хотите отключить SMB 1.0; - Отредактируйте политику и перейдите в раздел Конфигурация компьютера -> Предпочтения -> Настройки Windows -> Реестр;
- Создайте новый элемент реестра со следующим параметром:
Действие:Update
Улей:HKEY_LOCAL_MACHINE
Путь к ключу:SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Имя значения:SMB1
Тип значения:REG_DWORD
Данные о значении:0
- Эта политика отключает серверный компонент SMBv1.
Вы можете исключить определенные версии Windows из этой политики с помощью фильтра WMI GPO.
Если вы хотите использовать GPO для отключения клиента SMB на компьютерах домена, создайте два дополнительных параметра реестра:
- [Начало параметр (тип REG_DWORD) со значением 4 в ключе реестра HKLM\SYSTEM\CurrentControlSet\services\mrxsmb10;
- [DependOnService параметр (тип REG_MULTI_SZ) со значением Боузер, MRxSmb20, NSI (каждое значение в новой строке) в reg-ключе HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation.
Все, что вам нужно сделать, это обновить параметры групповой политики на клиентах, а затем, после перезагрузки, проверить, что SMBv1 полностью отключен.
SecGuide.adml
и SecGuide.admx
файлы):
- Настройка сервера SMB v1;
- Настройка драйвера клиента SMB v1.