- How to detect, enable and disable SMBv1, SMBv2, and SMBv3 in Windows
- Disabling SMBv2 or SMBv3 for troubleshooting
- How to remove SMB v1
- Как проверить версию SMB в Windows 10/8/7
- Как проверить версию SMB в Windows
- Способы проверки, какая версия SMB установлена на Сервере.
- 1] Метод PowerShell
- Способы проверить, какая версия SMB установлена на клиентах.
- 1] Метод PowerShell
- SMB Windows 10: настройка и как включить SMB1 и SMB2
- Включения SMB1 на Windows 10
- Проверка настроек
- Включение SMB2
- Ничего не помогло, папку или компьютер не видно, ничего не работает
How to detect, enable and disable SMBv1, SMBv2, and SMBv3 in Windows
Applies to: Windows 10, Windows 8.1, Windows 8, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012
This article describes how to enable and disable Server Message Block (SMB) version 1 (SMBv1), SMB version 2 (SMBv2), and SMB version 3 (SMBv3) on the SMB client and server components.
While disabling or removing SMBv1 might cause some compatibility issues with old computers or software, SMBv1 has significant security vulnerabilities and we strongly encourage you not to use it.
Disabling SMBv2 or SMBv3 for troubleshooting
While we recommend that you keep SMBv2 and SMBv3 enabled, you might find it useful to disable one temporarily for troubleshooting, as described in How to detect status, enable, and disable SMB protocols on the SMB Server.
In Windows 10, Windows 8.1, and Windows 8, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, and Windows Server 2012, disabling SMBv3 deactivatesВ the following functionality (and also the SMBv2 functionality that’s described in the previous list):
- Transparent Failover — clients reconnect without interruption to cluster nodes during maintenance or failover
- Scale Out – concurrent access to shared data on all file cluster nodesВ
- Multichannel — aggregation of network bandwidth and fault tolerance if multiple paths are available between client and server
- SMB Direct – adds RDMA networking support for very high performance, with low latency and low CPU utilization
- Encryption – Provides end-to-end encryption and protects from eavesdropping on untrustworthy networks
- Directory Leasing — Improves application response times in branch offices through caching
- Performance Optimizations — optimizations for small random read/write I/O
In Windows 7 and Windows Server 2008 R2, disabling SMBv2В deactivates the following functionality:
- Request compounding — allows for sending multiple SMB 2 requests as a single network request
- Larger reads and writes — better use of faster networks
- Caching of folder and file properties — clients keep local copies of folders and files
- Durable handles — allow for connection to transparently reconnect to the server if there is a temporary disconnection
- Improved message signing — HMAC SHA-256 replaces MD5 as hashing algorithm
- Improved scalability for file sharing — number of users, shares, and open files per server greatly increased
- Support for symbolic links
- Client oplock leasing model — limits the data transferred between the client and server, improving performance on high-latency networks and increasing SMB server scalability
- Large MTU support — for full use of 10-gigabye (GB) Ethernet
- Improved energy efficiency — clients that have open files to a server can sleep
The SMBv2 protocol was introduced in Windows Vista and Windows Server 2008, while the SMBv3 protocol was introduced in Windows 8 and Windows Server 2012. For more information about the capabilities of SMBv2 and SMBv3 capabilities, see the following articles:
How to remove SMB v1
Here’s how to remove SMBv1 in Windows 10, Windows 8.1, Windows Server 2019, Windows Server 2016, and Windows 2012 R2.
Как проверить версию SMB в Windows 10/8/7
SMB или Протоколы блокировки сообщений сервера используются для подключения компьютера к внешнему серверу. Windows 10 поставляется с поддержкой этих протоколов, но они отключены в OOBE. В настоящее время Windows 10 также поддерживает SMBv1, SMBv2 и SMBv3. Разные серверы в зависимости от их конфигурации требуют разных версий SMB для подключения к компьютеру. Но в случае, если вы используете Windows 8.1 или Windows 7, вы можете проверить, включена ли она тоже. Это то, что мы собираемся сделать сегодня.
Как проверить версию SMB в Windows
Прежде всего, если у вас Windows 7 , вам не следует отключать SMB v2. Это связано со следующими причинами:
- Составление запроса – позволяет отправлять несколько запросов SMB 2 как один сетевой запрос
- Больше чтения и записи – лучшее использование более быстрых сетей
- Кэширование свойств папок и файлов – клиенты хранят локальные копии папок и файлов
- Долговечные ручки – позволяют подключению прозрачно переподключаться к серверу при временном отключении
- Улучшена подпись сообщений – HMAC SHA-256 заменяет MD5 в качестве алгоритма хеширования
- Улучшенная масштабируемость для обмена файлами – значительно увеличилось количество пользователей, общих ресурсов и открытых файлов на сервер
- Поддержка символических ссылок
- Модель аренды клиентских блокировок – ограничивает объем данных, передаваемых между клиентом и сервером, повышает производительность в сетях с высокой задержкой и повышает масштабируемость SMB-серверов.
- Поддержка большого MTU – для полноценного использования 10-гигабайтного (ГБ) Ethernet
- Повышенная энергоэффективность – клиенты, которые имеют открытые файлы на сервере, могут спать.
Даже если вы работаете в Windows 8.1 или Windows 10 , вам не следует отключать SMB v3 или SMB v2, поскольку, помимо указанных выше проблем, вы можете столкнуться со следующими проблемами тоже, которые идут с отключением SMB v3:
- Прозрачное аварийное переключение – клиенты повторно подключаются без перерыва к узлам кластера во время обслуживания или аварийного переключения
- Scale Out – одновременный доступ к общим данным на всех узлах файлового кластера
- Многоканальный – агрегирование пропускной способности сети и отказоустойчивости, если доступно несколько путей между клиентом и сервером.
- SMB Direct – добавляет поддержку сети RDMA для очень высокой производительности, с низкой задержкой и низкой загрузкой процессора
- Шифрование – обеспечивает сквозное шифрование и защищает от прослушивания в ненадежных сетях.
- Лизинг каталогов – улучшает время отклика приложений в филиалах за счет кэширования
- Оптимизация производительности – оптимизация для небольших случайных операций чтения/записи.
Способы проверки, какая версия SMB установлена на Сервере.
Мы будем использовать следующие методы, чтобы проверить, какая версия SMB установлена на вашем компьютере:
- Метод PowerShell.
- Метод редактора реестра.
1] Метод PowerShell
Если вы хотите проверить, какую версию SMB вы используете, вы можете просто ввести следующую команду в PowerShell:
SMB v1 Windows 10 и Windows 8.1
SMB v2 для Windows 10 и Windows 8.1
SMB v1 для Windows 7
SMB v2 для Windows 7
Если он возвращает значение как True , он включен, иначе отключен.
2] Метод редактора реестра
Введите regedit в поле Начать поиск и нажмите Enter. После открытия редактора реестра перейдите к следующему
Теперь, если у вас есть DWORD с именами SMB1 или SMB2 , проверьте их значения.
Если для него установлено значение 0, оно отключено.
И в любом другом случае он включен.
Способы проверить, какая версия SMB установлена на клиентах.
Мы будем использовать следующие методы, чтобы проверить, какая версия SMB установлена на вашем компьютере:
- Метод PowerShell.
- Метод редактора групповой политики.
1] Метод PowerShell
Итак, если вы хотите проверить, какая версия SMB вы используете, вы можете просто ввести следующее в командной строке с привилегиями уровня администратора,
SMB v1 Windows 10 и Windows 8.1
SMB v2 для Windows 10 и Windows 8.1
2] Метод редактора групповой политики
Стоит отметить, что этот метод не будет работать в Windows 10 Home или аналогичной редакции Windows 8 или Windows 7.
Откройте окно «Выполнить», введите gpedit.msc и нажмите Enter, чтобы открыть редактор локальной групповой политики. Перейдите по следующему пути:
Конфигурация компьютера> Настройки Windows
В разделе Реестр найдите элемент реестра со следующими свойствами:
Действие: обновление
Улей: HKEY_LOCAL_MACHINE
Путь к ключу: SYSTEM \ CurrentControl \ services \ mrxsmb10
Название значения. Начало
Тип значения: REG_DWORD
Данные о стоимости. 4
Если значение данных установлено в 4, SMB отключен.
Для детального чтения посетите microsoft.com.
Связанное чтение . Почему и как отключить SMB1 в Windows 10/8/7.
SMB Windows 10: настройка и как включить SMB1 и SMB2
Всем привет! Сегодня столкнулся с такой проблемой. При построении локальной сети с двумя компьютерами первый (Windows 10) наотрез отказывается видеть другой комп (Windows 7). Все настройки я произвел правильно и открыл общий доступ. Но как потом оказалось, вся проблема в специальном сетевом протоколе SMB 1. Дело в том, что это старый протокол, который работает на олдскульных ОС. И он есть в десятке, но на последних обновлениях операционной системы Microsoft решила его отключить (во имя безопасности).
Симптомы достаточно простые. Вы выполнили все нужные настройки, заходите в раздел сети, а там ничего кроме вашего маршрутизатора не отображается. Бывает такое, что компьютер вы видите, и даже можете на него зайти, но вот при попытке открыть расшаренную папку можно лицезреть вот такое вот сообщение:
«Вы не можете подключиться к общей папке, так как она небезопасна. Эта общая папка работает по устаревшему протоколу SMB1, который не безопасен и может подвергнуть вашу систему риску атаки.»
Может быть еще вот такой текст ошибки: «Не удалось выполнить сопоставление сетевого диска из-за следующей ошибки». Ну и дальше все в том же духе.
Кстати, некоторые старые роутеры, также исползают устаревший SMB1 протокол – поэтому если у вас еще наблюдается проблема с доступом к жесткому диску или флешке, которые подключены к роутеру, то дальнейшие инструкции вам также будут полезны. Что мы будем делать? – нам нужно просто включить протокол SMBv1, и проблема будет решена. Поехали!
Включения SMB1 на Windows 10
Открываем меню «Пуск» и в поисковой строке вводим «Включение и отключение компонентов Windows». Можете просто ввести не полное слово «компонент». Вы также можете зайти туда через «Панель управления» (нажимаем кнопки «Win» и «R» – вводим команду: control). Далее заходим в «Программы и компоненты» и слева выбираем тот же самый пункт с отключением и включением компонентов.
Находим раздел с упоминанием нашего любимого протокола и включаем в папке все галочки. В самом конце нажимаем «ОК», чтобы изменения были приняты.
После этого SMB-1 в Windows 10 будет включено, и проблемы с сетью возникнуть не должны. Я бы на всякий случай перезагрузил компьютер. Но если вы все равно не видите какой-то компьютер в сети, или есть проблемы с доступом, смотрим следующую главу.
Проверка настроек
Нам нужно посмотреть настройки общего доступа и есть ли они у вас вообще.
- В «Пуске» нажмите по шестеренке.
- Заходим в раздел «Сеть и Интернет».
- Тут же на первой странице (вкладка «Состояние») откройте «Свойства» того подключения, которое вы используете для коннекта с роутером. Если вы подключены по кабелю, то выбираем «Ethernet», если вы подключены по «Wi-Fi», то выбираема второе подключение. На старых версиях нужно открыть ссылку «Изменить свойства подключения».
- Убедитесь, чтобы тип сетевого профиля был как «Частный». Вернитесь обратно, нажав по стрелки влево.
- Пролистните чуть ниже и откройте «Центр управления сетями…». Этот раздел может также называться как «Параметры общего доступа». Поэтому можете ориентироваться по значку или найти раздел со словами «Общий доступ».
- Слева выбираем третий пункт для изменения параметров.
- Так как мы уже изменили текущий профиль на частный, то открываем его.
- Теперь открываем раздел «Все сети» и включаем сетевое обнаружение для папок. Шифрование должно стоять в нужной позиции, но если это не так, то включите 128-и битное шифрование. Обязательно отключите параметр, который будет запрашивать у вас пароль при заходе в общую папку или при запросе к этому компьютеру.
- В самом конце сохраняем изменения.
Включение SMB2
Сначала давайте проверим статус SMBv2. Для это откройте «PowerShell» с правами админа, нажав ПКМ по кнопке «Пуск».
Get-SmbServerConfiguration | Select EnableSMB2Protocol
Если вы видите значение «True», то значит протокол работает. Если стоит значение «False», то включить параметр можно также с помощью команды:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
ПРИМЕЧАНИЕ! Таким же образом можно включить или выключить SMB1 – просто замените в команде одну цифру (2 на 1).
Далее кликаем по «Y» и на «Enter», чтобы подтвердить свои действия. Если же вы хотите отключить SMB2, то вместо «true» ставим «false». В конце не забываем перезагрузить систему.
Ничего не помогло, папку или компьютер не видно, ничего не работает
Если проблема остается, то есть несколько вариантов – от неправильных сетевых настроек до проблем с некоторыми службами в самой операционной системе. Все решения я уже описал в отдельной статье, и с ней вы можете ознакомиться по этой ссылке. То, что описано там, должно помочь.