Как обнаружить, включить и отключить протоколы SMB версий 1, 2 и 3 в Windows и Windows Server
Аннотация
Предупреждение. Не рекомендуется отключать прокол SMB версии 2 или 3. Отключать протокол SMB версии 2 или 3 следует только в качестве временной меры устранения неполадок. Не оставляйте протокол SMB версии 2 или 3 в отключенном состоянии.
В Windows 7 и Windows Server 2008 R2 отключение протокола SMB версии 2 приведет к отключению указанных далее функциональных возможностей.
- Комбинирование запросов, позволяющее отправлять несколько запросов SMB 2 как единый сетевой запрос.
- Большие объемы операций чтения и записи, позволяющие оптимально использовать быстрые сети.
- Кэширование свойств файлов и папок, в которых клиенты сохраняют локальные копии файлов и папок.
- Долговременные дескрипторы, позволяющие прозрачно восстанавливать подключение к серверу в случае временного отключения.
- Усовершенствованные подписи сообщений, где алгоритм хэширования HMAC SHA-256 заменяет MD5.
- Усовершенствованное масштабирование для совместного использования файлов (существенно увеличено число пользователей, общих ресурсов и открытых файлов на сервер).
- Поддержка символьных ссылок.
- Модель аренды нежестких блокировок клиентов, ограничивающая объем данных, передаваемых между клиентом и сервером, что позволяет улучить производительность сетей с большой задержкой и повысить масштабируемость SMB-сервера.
- Поддержка больших MTU для полноценного использования 10-гигабитного Ethernet.
- Снижение энергопотребления — клиенты, имеющие открытые для сервера файлы, могут находиться в режиме сна.
В Windows 8, Windows 8.1, Windows 10, Windows Server 2012 и Windows Server 2016 отключение протокола SMB версии 3 приведет к отключению указанных далее функциональных возможностей (а также функциональности протокола SMB версии 2, описанной в предыдущем списке).
- Прозрачная отработка отказа, при которой клиенты переключаются на узлы кластера во время обслуживания или сбоя без нарушения работы.
- Масштабирование – с предоставлением параллельного доступа к общим данным на всех узлах кластера.
- Многоканальность обеспечивает агрегирование полосы пропускания сетевого канала и отказоустойчивость сети в различных каналах, имеющихся между клиентом и сервером.
- SMB Direct – предоставляет поддержку сетей RDMA для обеспечения очень высокой производительности, небольшой задержки и низкого коэффициента использования ЦП.
- Шифрование – обеспечивает сквозное шифрование данных и защищает их от перехвата в ненадежных сетях.
- Аренда каталогов сокращает время ответа приложений в филиалах за счет кэширования.
- Оптимизация производительности операций произвольного чтения и записи небольших объемов данных.
Дополнительная информация
Протокол SMB версии 3 был введен в Windows 8 и Windows Server 2012.
Дополнительные сведения о возможностях протоколов SMB версии 2 и 3 см. на следующих веб-сайтах Microsoft TechNet.
Как корректно удалить протокол SMB версии 1 в Windows 8.1, Windows 10, Windows 2012 R2 и Windows Server 2016
Windows Server 2012 R2 и 2016: Способы с использованием PowerShell
SMB версии 1
Обнаружение: | Get-WindowsFeature FS-SMB1 |
Отключение: | Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol |
Включение: | Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol |
SMB версий 2 и 3
Обнаружение: | Get-SmbServerConfiguration | Select EnableSMB2Protocol |
Отключение: | Set-SmbServerConfiguration -EnableSMB2Protocol $false |
Включение: | Set-SmbServerConfiguration -EnableSMB2Protocol $true |
Windows Server 2012 R2 и Windows Server 2016: Способ отключения SMB с использованием диспетчера серверов
SMB версии 1
Windows 8.1 и Windows 10: Способ для PowerShell
Протокол SMB версии 1
Протокол SMB версий 2 и 3
Обнаружение: | Get-SmbServerConfiguration | Select EnableSMB2Protocol |
Отключение: | Set-SmbServerConfiguration –EnableSMB2Protocol $false |
Включение: | Set-SmbServerConfiguration –EnableSMB2Protocol $true |
Windows 8.1 и Windows 10: Метод с использованием компонента «Установка и удаление программ»
Как определить состояние, включить и отключить протоколы SMB на SMB-сервере
Для Windows 8 и Windows Server 2012
В Windows 8 и Windows Server 2012 появился новый командлет Windows PowerShell Set-SMBServerConfiguration. Он позволяет включать или отключать протоколы SMB версии 1, 2 и 3 на сервере.
Примечания. При включении или отключении протокола SMB версии 2 в Windows 8 или Windows Server 2012 также происходит включение или отключение протокола SMB версии 3. Это связано с использованием общего стека для этих протоколов.
После выполнения командлета Set-SMBServerConfiguration перезагрузка компьютера не требуется.
SMB версии 1 на SMB-сервере
Обнаружение: | Get-SmbServerConfiguration | Select EnableSMB1Protocol |
Отключение: | Set-SmbServerConfiguration -EnableSMB1Protocol $false |
Включение: | Set-SmbServerConfiguration -EnableSMB1Protocol $true |
Дополнительные сведения см. в статье блога Серверное хранилище Майкрософт.
SMB версий 2 и 3 на SMB-сервере
Обнаружение: | Get-SmbServerConfiguration | Select EnableSMB2Protocol |
Отключение: | Set-SmbServerConfiguration -EnableSMB2Protocol $false |
Включение: | Set-SmbServerConfiguration -EnableSMB2Protocol $true |
Для Windows 7, Windows Server 2008 R2, Windows Vista и Windows Server 2008
Чтобы включить или отключить протоколы SMB на SMB-сервере с Windows 7, Windows Server 2008 R2, Windows Vista или Windows Server 2008, воспользуйтесь Windows PowerShell или редактором реестра.
Способы с использованием PowerShell
Примечание.
Для этого способа требуется PowerShell 2.0 или более поздней версии.
SMB версии 1 на SMB-сервере
Обнаружение:
Get-Item HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}
Конфигурация по умолчанию = Enabled (раздел реестра не создается), значение SMB1 не возвращается
Отключение:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 –Force
Включение:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 1 –Force
Примечание. После внесения этих изменений компьютер необходимо перезагрузить.
Дополнительные сведения см. в статье блога Серверное хранилище Майкрософт.
SMB версий 2 и 3 на SMB-сервере
Обнаружение:
Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}
Отключение:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 0 –Force
Включение:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 –Force
Примечание. После внесения этих изменений компьютер необходимо перезагрузить.
Редактор реестра
Внимание! В статье содержатся сведения об изменении реестра. Перед внесением изменений рекомендуется создать резервную копию реестра. и изучить процедуру его восстановления на случай возникновения проблемы. Дополнительные сведения о создании резервной копии, восстановлении и изменении реестра см. в указанной ниже статье базы знаний Майкрософт.
Чтобы включить или отключить протокол SMB версии 1 на SMB-сервере, настройте следующий раздел реестра:
Запись реестра: SMB1
REG_DWORD: 0 = отключено
REG_DWORD: 1 = включено
По умолчанию: 1 = включен (не создан раздел реестра)
Чтобы включить или отключить протокол SMB версии 2 на SMB-сервере, настройте следующий раздел реестра:
Запись реестра: SMB2
REG_DWORD: 0 = отключено
REG_DWORD: 1 = включено
По умолчанию: 1 = включен (не создан раздел реестра)
Примечание. После внесения этих изменений компьютер необходимо перезагрузить.
Как определить состояние, включить и отключить протоколы SMB на SMB-клиенте
Для Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8 и Windows Server 2012
Примечание. При включении или отключении протокола SMB версии 2 в Windows 8 или Windows Server 2012 также происходит включение или отключение протокола SMB версии 3. Это связано с использованием общего стека для этих протоколов.
SMB версии 1 на SMB-сервере
Обнаружение: | sc.exe query lanmanworkstation |
Отключение: | sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi sc.exe config mrxsmb10 start= disabled |
Включение: | sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi sc.exe config mrxsmb10 start= auto |
Дополнительные сведения см. в статье блога Серверное хранилище Майкрософт
SMB версий 2 и 3 на SMB-сервере
Обнаружение: | sc.exe query lanmanworkstation |
Отключение: | sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi sc.exe config mrxsmb20 start= disabled |
Включение: | sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi sc.exe config mrxsmb20 start= auto |
Примечания.
- Эти команды следует вводить в командной строке с повышенными привилегиями.
- После внесения этих изменений компьютер необходимо перезагрузить.
Отключение сервера SMBv1 с групповой политикой
Это настроит параметры следующего нового элемента в реестре
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Запись реестра: SMB1 REG_DWORD: 0 = отключено
Для настройки с использованием групповой политики:
- Откройте Консоль управления групповыми политиками. Щелкните правой кнопкой мыши объект групповой политики (GPO), который должен содержать новый предпочтительный элемент, затем нажмите кнопку Изменить.
- В дереве консоли в разделе Конфигурация компьютера разверните папку Настройки, затем разверните папку Параметры Windows.
- Щелкните правой кнопкой мыши узел Реестр, нажмите Новый и выберите Элемент реестра.
В диалоговом окне Новые свойства реестра выберите следующее:
- Действие: Создать
- Куст: HKEY_LOCAL_MACHINE
- Путь к разделу: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
- Имя параметра: SMB1
- Тип параметра: REG_DWORD.
- Значение: 0
Это отключит серверные компоненты SMB версии 1. Эта групповая политика должна быть применена ко всем необходимым рабочим станциям, серверам и контроллерам домена в домене.
Примечание. Фильтры WMI могут быть также настроены для исключения не поддерживаемых операционных систем или выбранных исключений, таких как Windows XP.
Внимание! Будьте осторожны при внесении изменений на контроллерах, где для устаревших систем, таких как Windows XP или Linux более поздней версии, и сторонних систем (которые не поддерживают протоколы SMB версии 2 или 3) требуется доступ к SYSVOL или другим общим папкам, в которых SMB версии 1 был отключен.
Отключение клиента SMB версии 1 с групповой политикой
Для отключения клиента SMB версии 1 ключ службы раздела реестра необходимо обновить для отключения запуска MRxSMB10, и затем зависимость в MRxSMB10 должна быть удалена из записи для LanmanWorkstation, чтобы она могла быть запущена стандартным способом без запроса MRxSMB10 при первом запуске.
Это обновление заменяет значения по умолчанию в следующих двух элементах реестра
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10
Запись реестра: Start REG_DWORD: 4 = отключено
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation
Запись реестра: DependOnService REG_MULTI_SZ: “Bowser”,”MRxSmb20″,”NSI”
Примечание. По умолчанию содержит MRxSMB10, который в настоящее время исключен как зависимость
Для настройки с использованием групповой политики:
- Откройте Консоль управления групповыми политиками. Щелкните правой кнопкой мыши объект групповой политики (GPO), который должен содержать новый предпочтительный элемент, затем нажмите кнопку Изменить.
- В дереве консоли в разделе Конфигурация компьютера разверните папку Настройки, затем разверните папку Параметры Windows.
- Щелкните правой кнопкой мыши узел Реестр, нажмите Новый и выберите Элемент реестра.
В диалоговом окне Новые свойства реестра выберите следующее:
- Действие: Обновление
- Куст: HKEY_LOCAL_MACHINE
- Путь к разделу: SYSTEM\CurrentControlSet\services\mrxsmb10
- Имя параметра: Start
- Тип параметра: REG_DWORD.
- Значение: 4
Затем удалите зависимость в MRxSMB10, которая была отключена
В диалоговом окне Новые свойства реестра выберите следующее:
- Действие: Замените
- Куст: HKEY_LOCAL_MACHINE
- Путь к разделу: SYSTEM\CurrentControlSet\Services\LanmanWorkstation
- Имя параметра: DependOnService
- Тип параметра REG_MULTI_SZ
- Значение:
- Bowser
- MRxSmb20
- NSI
Примечание. У этих 3 строк не будет маркеров (см. ниже)
Значения по умолчанию содержат MRxSMB10 в большом количестве версий Windows, поэтому замена их многозначной строкой приведет к удалению MRxSMB10 как зависимости для LanmanServer и переходу от четырех значений по умолчанию к только трем значениям, описанным выше.
Примечание. При использовании Консоли управления групповыми политиками не нужно использовать кавычки или запятые. Просто введите каждую запись отдельной строкой, как указано выше
Требуется перезагрузка:
После применения политики и ввода параметров реестра протокол SMB версии 1 будет отключен после перезагрузки системы.
Аннотация
Если все параметры находятся в одном Объекте групповой политики (GPO), то Управление групповыми политиками отобразит параметры ниже.
Тестирование и проверка
После настройки дайте разрешение политике выполнить репликацию и обновление. Поскольку это необходимо для тестирования, запустите gpupdate /force из строки CMD.EXE и затем просмотрите целевые машины, чтобы параметры реестра были применены правильно. Убедитесь, что SMB версии 2 и 3 работают для всех систем в среде.
Внимание! Не забудьте перезагрузить целевые системы.