SMB или Протоколы блокировки сообщений сервера используются для подключения компьютера к внешнему серверу. Windows 10 поставляется с поддержкой этих протоколов, но они отключены в OOBE. В настоящее время Windows 10 также поддерживает SMBv1, SMBv2 и SMBv3. Разные серверы в зависимости от их конфигурации требуют разных версий SMB для подключения к компьютеру. Но в случае, если вы используете Windows 8.1 или Windows 7, вы можете проверить, включена ли она тоже. Это то, что мы собираемся сделать сегодня.
Содержание
- Как проверить версию SMB в Windows
- Способы проверки, какая версия SMB установлена на Сервере.
- 1] Метод PowerShell
- Способы проверить, какая версия SMB установлена на клиентах.
- 1] Метод PowerShell
Как проверить версию 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
Get-WindowsOptionalFeature –Online –FeatureName SMB1Protocol
SMB v2 для Windows 10 и Windows 8.1
Get-SmbServerConfiguration | Выберите EnableSMB2Protocol
SMB v1 для Windows 7
Get-Item HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters | ForEach-Object {Get-ItemProperty $ _. Pspath}
SMB v2 для Windows 7
Get-ItemProperty HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters | ForEach-Object {Get-ItemProperty $ _. Pspath}
Если он возвращает значение как True , он включен, иначе отключен.
2] Метод редактора реестра
Введите regedit в поле Начать поиск и нажмите Enter. После открытия редактора реестра перейдите к следующему
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Параметры
Теперь, если у вас есть DWORD с именами SMB1 или SMB2 , проверьте их значения.
Если для него установлено значение 0, оно отключено.
И в любом другом случае он включен.
Способы проверить, какая версия SMB установлена на клиентах.
Мы будем использовать следующие методы, чтобы проверить, какая версия SMB установлена на вашем компьютере:
- Метод PowerShell.
- Метод редактора групповой политики.
1] Метод PowerShell
Итак, если вы хотите проверить, какая версия SMB вы используете, вы можете просто ввести следующее в командной строке с привилегиями уровня администратора,
SMB v1 Windows 10 и Windows 8.1
sc.exe qc lanmanworkstation
SMB v2 для Windows 10 и Windows 8.1
sc.exe qc lanmanworkstation
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 (Server Message Block) используется для предоставления совместного удаленного доступа к файлам, принтерам и другим устройствам через порт TCP 445. В этой статье мы рассмотрим: какие версии (диалекты) протокола SMB доступны в различных версиях Windows (и как они соотносятся с версиями samba в Linux); как определить версию SMB на вашем компьютере; и как включить/отключить клиент и сервер SMBv1, SMBv2 и SMBv3.
Содержание:
- Версии протокола SMB в Windows
- Как проверить поддерживаемые версии SMB в Windows?
- Вывести используемые версии SMB с помощью Get-SMBConnection
- Об опасности использования SMBv1
- Включение и отключение SMBv1, SMBv2 и SMBv3 в Windows
Версии протокола SMB в Windows
Есть несколько версии протокола SMB (диалектов), которые последовательно появлялись в новых версиях Windows:
Для реализации протокола SMB в Linux/Unix системах используется samba. В скобках мы указали в каких версиях samba поддерживается каждый диалект SMB.
- CIFS — Windows NT 4.0;
- SMB 1.0 — Windows 2000;
- SMB 2.0 — Windows Server 2008 и Windows Vista SP1 (поддерживается в Samba 3.6);
- SMB 2.1 — Windows Server 2008 R2 и Windows 7 (поддерживается в Samba 4.0);
- SMB 3.0 — Windows Server 2012 и Windows 8 (поддерживается в Samba 4.2);
- SMB 3.02 — Windows Server 2012 R2 и Windows 8. 1 (не поддерживается в Samba);
- SMB 3.1.1 – Windows Server 2016 и Windows 10 (не поддерживается в Samba).
Начиная с версии Samba 4.14, по умолчанию используется SMB2.1.
При сетевом взаимодействии по протоколу SMB между клиентом и сервером используется максимальная версия протокола, поддерживаемая одновременно и клиентом, и сервером.
Ниже представлена сводная таблица, по которой можно определить версию протокола SMB, которая выбирается при взаимодействии разных версий Windows:
Операционная система | Win 10, Server 2016 | Windows 8.1, Server 2012 R2 |
Windows 8, Server 2012 |
Windows 7, Server 2008 R2 |
Windows Vista, Server 2008 |
Windows XP, Server 2003 и ниже |
Windows 10 ,
Windows Server 2016 |
SMB 3.1.1 | SMB 3.02 | SMB 3.0 | SMB 2.1 | SMB 2.0 | SMB 1.0 |
Windows 8.1 , Server 2012 R2 |
SMB 3.02 | SMB 3.02 | SMB 3.0 | SMB 2.1 | SMB 2.0 | SMB 1.0 |
Windows 8 , Server 2012 |
SMB 3.0 | SMB 3.0 | SMB 3.0 | SMB 2.1 | SMB 2.0 | SMB 1.0 |
Windows 7, Server 2008 R2 |
SMB 2.1 | SMB 2.1 | SMB 2.1 | SMB 2.1 | SMB 2.0 | SMB 1.0 |
Windows Vista, Server 2008 |
SMB 2.0 | SMB 2.0 | SMB 2.0 | SMB 2.0 | SMB 2.0 | SMB 1.0 |
Windows XP, 2003 и ниже | SMB 1.0 | SMB 1.0 | SMB 1.0 | SMB 1.0 | SMB 1.0 | SMB 1.0 |
К примеру, при подключении клиентского компьютера с Windows 8.1 к файловому серверу с Windows Server 2016 будет использоваться протокол SMB 3.0.2.
Согласно таблице Windows XP, Windows Server 2003 для доступа к общим файлам и папкам на сервере могут использовать только SMB 1.0, который в новых версиях Windows Server (2012 R2 / 2016) может быть отключен. Таким образом, если в вашей инфраструктуре одновременно используются компьютеры с Windows XP (снятой с поддержки), Windows Server 2003/R2 и сервера с Windows Server 2012 R2/2016/2019, устаревшие клиенты не смогут получить доступ к файлам и папкам на файловом сервере с новой ОС.
Если Windows Server 2016/2012 R2 с отключенным SMB v1.0 используется в качестве контроллера домена, значить клиенты на Windows XP/Server 2003 не смогут получить доступ к каталогам SYSVOL и NETLOGON на контроллерах домена и авторизоваться в AD.
На старых клиентах при попытке подключиться к ресурсу на файловом сервере с отключенным SMB v1 появляется ошибка:
The specified network name is no longer available
Как проверить поддерживаемые версии SMB в Windows?
Рассмотрим, как определить, какие версии протокола SMB поддерживаются на вашем компьютере Windows.
В Windows 10, 8.1 и Windows Server 2019/2016/2012R2 вы можете проверить состояние различных диалектов SMB протокола с помощью PowerShell:
Get-SmbServerConfiguration | select EnableSMB1Protocol,EnableSMB2Protocol
Данная команда вернула, что протокол SMB1 отключен (
EnableSMB1Protocol=False
), а протоколы SMB2 и SMB3 включены (
EnableSMB1Protocol=True
).
Обратите внимание, что протоколы SMBv3 и SMBv2 тесно связаны между собой. Нельзя отключить или включить отдельно SMBv3 или SMBv2. Они всегда включаются/отключаются только совместно, т.к. используют один стек.
В Windows 7, Vista, Windows Server 2008 R2/2008:
Get-Item HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters | ForEach-Object {Get-ItemProperty $_.pspath}
Если в данной ветке реестра нет параметров с именами SMB1 или SMB2, значить протоколы SMB1 и SMB2 по умолчанию включены.
Также в этих версиях Windows вы можете проверить, какие диалекты SMB разрешено использовать в качестве клиентов с помощью команд:
sc.exe query mrxsmb10
SERVICE_NAME: mrxsmb10 TYPE : 2 FILE_SYSTEM_DRIVER STATE : 4 RUNNING (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0
sc.exe query mrxsmb20
SERVICE_NAME: mrxsmb20 TYPE : 2 FILE_SYSTEM_DRIVER STATE : 4 RUNNING (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0
В обоих случаях службы запущены (
STATE=4 Running
). Значит Windows может подключаться как к SMBv1, так и к SMBv2 серверам.
Вывести используемые версии SMB с помощью Get-SMBConnection
Как мы говорили раньше, компьютеры при взаимодействии по протоколу SMB используют максимальную версию, поддерживаемую как клиентом, так и сервером. Для определения версии SMB, используемой для доступа к удаленному компьютеру можно использовать командлет PowerShell
Get-SMBConnection
:
Версия SMB, используемая для подключения к удаленному серверу (ServerName) указана в столбце Dialect.
Можно вывести информацию о версиях SMB, используемых для доступа к конкретному серверу:
Get-SmbConnection -ServerName servername
Если нужно отобразить, используется ли SMB шифрование (появилось в SMB 3.0), выполните:
Get-SmbConnection | ft ServerName,ShareName,Dialect,Encrypted,UserName
В Linux вывести список SMB подключения и используемые диалекты в samba можно командой:
$ sudo smbstatus
Чтобы на стороне сервера вывести список используемых клиентами версий протокола SMB и количество клиентов, используемых ту или иную версию протокола SMB, выполните команду:
Get-SmbSession | Select-Object -ExpandProperty Dialect | Sort-Object -Unique
В нашем примере имеется 825 клиентов, подключенных к серверу с помощью SMB 2.1 (Windows 7/Windows Server 2008 R2) и 12 клиентов SMB 3.02.
С помощью PowerShell можно включить аудит версий SMB, используемых для подключения:
Set-SmbServerConfiguration –AuditSmb1Access $true
События подключения затем можно извлечь из журналов Event Viewer с помощью PowerShell:
Get-WinEvent -LogName Microsoft-Windows-SMBServer/Audit
Об опасности использования SMBv1
Последние несколько лет Microsoft из соображений безопасности планомерно отключает устаревший протокол SMB 1.0. Связано это с большим количеством критических уязвимостей в этом протоколе (вспомните историю с эпидемиями вирусов-шифровальщиков wannacrypt и petya, которые использовали уязвимость именно в протоколе SMBv1). Microsoft и другие IT компании настоятельно рекомендуют отказаться от его использования.
Однако отключение SMBv1 может вызвать проблемы с доступом к общий файлам и папкам на новых версиях Windows 10 (Windows Server 2016/2019) с устаревших версий клиентов (Windows XP, Server 2003), сторонних ОС (Mac OSX 10.8 Mountain Lion, Snow Leopard, Mavericks, старые версии Linux), различных старых NAS устройствах.
Если в вашей сети не осталось legacy устройств с поддержкой только SMBv1, обязательно отключайте эту версию диалекта в Windows.
В том случае, если в вашей сети остались клиенты с Windows XP, Windows Server 2003 или другие устройства, которые поддерживают только SMBv1, их нужно как можно скорее обновить или тщательно изолировать.
Включение и отключение SMBv1, SMBv2 и SMBv3 в Windows
Рассмотрим способы включения, отключения различных версий SMB в Windows. Мы рассматриваем отдельно включение клиента и сервера SMB (это разные компоненты).
Windows 10, 8.1, Windows Server 2019/2016/2012R2:
Отключить клиент и сервер SMBv1:
Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol
Отключить только SMBv1 сервер:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
Включить клиент и сервер SMBv1:
Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol
Включить только SMBv1 сервер:
Set-SmbServerConfiguration -EnableSMB1Protocol $true
Отключить сервер SMBv2 и SMBv3:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
Включить сервер SMBv2 и SMBv3:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Windows 7, Vista, Windows Server 2008 R2/2008:
Отключить SMBv1 сервер:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 –Force
Включить SMBv1 сервер:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 1 –Force
Отключить SMBv1 клиент:
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled
Включить SMBv1 клиент:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb10 start= auto
Отключить SMBv2 сервер:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 0 -Force
Включить SMBv2 сервер
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 –Force
Отключить SMBv2 клиент:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
sc.exe config mrxsmb20 start= disabled
Включить SMBv2 клиент:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb20 start= auto
Для отключения сервера SMBv1 на всех компьютерах независимо от версии Windows можно распространить параметр реестра типа REG_DWORD с именем SMB1 и значением 0 (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters)на через GPO.
Для отключения SMBv2 нужно в этой же ветке установить параметр SMB2=0.
Для отключения SMBv1 клиента нужно распространить такой параметр реестра:
- Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10
- Name: Start
- Type: REG_DWORD
- Value: 4
При отключении SMB 1.0/CIFS File Sharing Support в Windows вы можете столкнуться с ошибкой “0x80070035, не найден сетевой путь”, ошибкой при доступе к общим папкам, и проблемами обнаружения компьютеров в сетевом окружении. В этом случае вместо служба обозревателя компьютеров (Computer Browser) нужно использовать службы обнаружения (линк).
Протокол SMB (Server Message Block) является одним из основных протоколов для обмена файлами и принтерами между устройствами в сети. Версия SMB1 была выпущена в далеком 1983 году и, хотя и имеет ряд уязвимостей, до сих пор используется во многих системах.
Однако, начиная с Windows 10 версии 1709 и Windows Server версии 2019, компания Microsoft по умолчанию отключила протокол SMB1. Это связано с повышением безопасности и стабильности системы, ведь старая версия протокола имеет некоторые уязвимости.
Если вам все-таки необходимо использовать SMB1 на компьютере с установленной операционной системой Windows 7, вам понадобится выполнить несколько простых шагов. Ниже приведена подробная инструкция, которая поможет включить SMB1 на вашей системе.
Содержание
- Включение протокола SMB1 на Windows 7
- Подготовка к включению SMB1
- Определение текущего состояния SMB1
- Включение SMB1 через панель управления
- Включение SMB1 через реестр
- Проверка состояния SMB1
- Выводы
Включение протокола SMB1 на Windows 7
Однако, если у вас возникла необходимость использовать SMB1 на компьютере с установленной Windows 7, вы можете включить его следуя этим шагам:
- Откройте «Панель управления» и перейдите в раздел «Программы» или «Программы и компоненты».
- Выберите «Включение или отключение компонентов Windows».
- В открывшемся окне найдите «Поддержка SMB 1.0/CIFS клиента» и «Поддержка SMB 1.0/CIFS сервера» и установите галочки рядом с ними.
- Нажмите «ОК» и подождите, пока процесс установки компонентов не будет завершен.
После завершения этого процесса, протокол SMB1 будет включен на вашем компьютере с Windows 7. Однако, учтите, что использование устаревшего протокола может представлять риск безопасности, поэтому рекомендуется использовать его только в случае необходимости и обеспечить дополнительную защиту вашей сети.
Подготовка к включению SMB1
Прежде чем приступить к включению протокола SMB1 на вашей операционной системе Windows 7, вам потребуется выполнить несколько предварительных шагов:
1. | Убедитесь, что у вас есть права администратора для доступа к настройкам системы. |
2. | Сделайте резервную копию всех важных данных на вашем компьютере. Включение протокола SMB1 может повлечь за собой ряд рисков, поэтому рекомендуется создать резервную копию для обеспечения безопасности ваших файлов. |
3. | Проверьте, что у вас установлена версия Windows 7 Professional или Windows 7 Ultimate. Включение SMB1 доступно только в этих версиях операционной системы. |
4. | Обновите вашу операционную систему до последней версии, установив все доступные обновления через центр обновлений Windows. |
5. | Запустите антивирусное программное обеспечение и выполните полное сканирование вашего компьютера. Убедитесь, что ваша система не содержит вирусы, которые могут использовать протокол SMB1 для несанкционированного доступа. |
После выполнения всех этих шагов вы будете готовы приступить к включению протокола SMB1 на вашем компьютере с операционной системой Windows 7.
Определение текущего состояния SMB1
Прежде чем приступить к включению протокола SMB1 на Windows 7, необходимо определить текущее состояние этого протокола на вашем компьютере. Для этого выполните следующие действия:
- Откройте «Панель управления» в меню «Пуск».
- Выберите раздел «Программы» и затем нажмите на ссылку «Включение или отключение компонентов Windows».
- В открывшемся окне найдите компонент «Поддержка файлов сервера SMB 1.0/CIFS» в списке компонентов и проверьте его текущий статус:
- Если компонент не отмечен галочкой, это означает, что протокол SMB1 уже отключен.
- Если компонент отмечен галочкой, это означает, что протокол SMB1 уже включен.
Итак, вы узнали текущее состояние протокола SMB1 на вашем компьютере. Если протокол уже включен, вы можете пропустить шаги по его включению. Если протокол отключен, вы можете перейти к следующему разделу и следовать инструкциям по его включению.
Включение SMB1 через панель управления
Чтобы включить протокол SMB1 на компьютере с операционной системой Windows 7, следуйте инструкциям ниже:
- Откройте «Панель управления» через «Пуск».
- В правом верхнем углу окна «Панель управления» найдите поле поиска и введите «включение или отключение компонентов Windows».
- Нажмите на найденный результат, чтобы открыть окно «Компоненты Windows».
- В окне «Компоненты Windows» найдите пункт «Файловый сервис Windows» и разверните его.
- Разверните пункт «Служба SMB 1.0/CIFS клиент»
- Отметьте чекбокс рядом с «Клиент SMB 1.0/CIFS»
- Нажмите кнопку «OK», чтобы сохранить изменения.
- При необходимости система может запросить ваше подтверждение. Нажмите «Да» или «ОК».
Теперь протокол SMB1 будет включен на вашем компьютере с Windows 7. Учтите, что активация уязвимого протокола может повысить риски безопасности системы, поэтому рекомендуется включать SMB1 только в случае необходимости.
Включение SMB1 через реестр
Для включения протокола SMB1 через реестр на операционной системе Windows 7 необходимо выполнить следующие шаги:
Шаг 1: | Откройте редактор реестра, нажав клавишу Win + R и введя команду regedit. |
Шаг 2: | Перейдите в раздел «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters». |
Шаг 3: | Создайте новый значок типа DWORD с именем «SMB1» и значением «1» для включения SMB1. Если значение уже существует, убедитесь, что оно установлено в «1». |
Шаг 4: | Перезагрузите компьютер, чтобы изменения вступили в силу. |
После выполнения этих шагов протокол SMB1 будет включен на вашей операционной системе Windows 7.
Проверка состояния SMB1
Для проверки состояния SMB1 на вашем компьютере Windows 7 выполните следующие действия:
- Откройте «Панель управления» путем выбора ее в меню «Пуск».
- Найдите и выберите «Программы» или «Программы и компоненты».
- В разделе «Включение или отключение компонентов Windows» найдите «Службы файлов и принтеров» и щелкните на нем.
- Если галочка рядом с «Ядро SMB 1.0/CIFS» установлена, то SMB1 включена и работает на вашем компьютере. Если галочка снята, то SMB1 отключена.
- Вы можете изменить состояние SMB1, установив или сняв галочку и затем щелкнув «OK».
Выводы
Включение протокола SMB1 на Windows 7 может быть полезным в некоторых случаях, например, при работе с устройствами, которые не поддерживают более новые версии протокола SMB.
Однако, следует помнить, что использование устаревшей версии протокола SMB может повлечь за собой ряд уязвимостей и ограничений. Поэтому рекомендуется включать SMB1 только в тех случаях, когда иное решение недоступно или непрактично.
Перед включением SMB1 на Windows 7 необходимо убедиться, что компьютер защищен современными антивирусными программами и обновлениями безопасности, чтобы минимизировать риск взлома системы.
При включении SMB1 следует также помнить о необходимости регулярного обновления операционной системы и прочего установленного программного обеспечения, чтобы предотвратить возможные уязвимости, связанные с устаревшей версией протокола.
Надеемся, что данная инструкция помогла вам настроить SMB1 на Windows 7 и решить вашу проблему с подключением устройств или сетевых ресурсов.
Удачи!
Компьютер подвержен вирусным атакам, нередко выводящим его из строя. Для обеспечения безопасности используются антивирусные программы, а разработчики операционных систем снабжают свои продукты защитными компонентами, обеспечивающими базовую защиту. Кроме защитных инструментов, в системе имеются и «проблемные» компоненты, которыми злоумышленники могут воспользоваться с целью выполнения мошеннических операций. Об одном из инструментов такого класса, а именно о его надёжности и соответствии требованиям времени по защите устройств, пойдёт речь в этом повествовании. В этой статье расскажем, что собой являет протокол SMBv1, входящий в состав операционной системы Windows, проанализируем потребность в нём, актуальность его работы, и методы его включения или отключения.
Потребность в поддержке SMBv1 в ОС Windows
Для многих пользователей ПК словосочетание «Протокол SMBv1» является непонятным и непонятно, нужен ли этот компонент в системе для выполнения конкретных задач. Протокол SMB первой серии является по умолчанию системным компонентом ОС Windows, независимо от её версии, отвечает за файлообменные процессы на ПК, причём его «возраст» составляет около тридцати лет. Естественно, по меркам компьютерных технологий, согласно возрасту протокола, его можно смело назвать устаревшим, но поддержка SMBv1 по непонятным причинам, применяется не только в седьмой или восьмой версии ОС, но и в Windows 10. Причина этого кроется далеко не в некомпетентности разработчиков Microsoft, а в банальном применении файловых продуктов в обиходе, с которыми невозможно будет работать без этого протокола.
ВНИМАНИЕ. На базе этой информации возникает логичный вопрос, почему тогда есть смысл рассуждать о необходимости отключения поддержки, если она до сих пор используется, и даже необходима в определённой сфере компьютерной деятельности? Вирусная атака, несколько лет назад парализовавшая работу компьютерных систем, под именем Petya, внедрилась в ПК именно через уязвимую область. Этим «слабым звеном» и выступал протокол SMB.
Через аналогичную лазейку попадают на ПК и не менее известные программы-вымогатели, к примеру, WannaCry, Satana и подобные им вирусы, способные полностью парализовать функционирование компьютерного устройства. Суть заражения заключается в полной блокировке работоспособности системы, что предусматривает возможную переустановку ОС, в то время как для глобальных компаний такой метод является недопустимым.
Разобравшись в сути проблемы, стоит переходить к вопросу, нужен ли протокол SMB, отвечающий за файлообменные процессы в локальной сети и возможность работы с файлами, надо ли его деактивировать или включить на своём ПК поддержку SMBv1. Если пользователь эксплуатирует приложения, для работы с которыми необходим протокол SMBv1, тогда поддержку надо активизировать, так как в ином случае работать с ними будет невозможно. На официальном сайте Microsoft пользователь самостоятельно может изучить список приложений, для работы с которыми необходима поддержка этого протокола. Если вашим программам не нужна поддержка этого протокола, тогда его нужно отключить, при этом можно оставить в рабочем состоянии последующие версии поддержки класса SMB. Рассмотрим метод включения и отключения протокола SMBv1, различающуюся по процессу выполнения, в зависимости от версии установленной ОС.
Как включить протокол SMBv1
Потребность в SMBv1 очень сомнительна, так как файлов в сети, для работы с которыми требуется этот формат всё меньше, с прогрессивным их сведением практически к нулю. Соответственно, более актуальной считается потребность в блокировании протокола, о чём будет рассказано позже.
Стоит отметить, что формат SMBv1 активирован во всех версиях ОС начиная с Windows 7. Исключением из правил является Windows 10, 1709 версии и выше, в которых убрана поддержка SMBv1. Иногда возникает потребность включить SMBv1 в Windows 10, при необходимости эксплуатации такого модуля для выполнения конкретных задач, в частности, снятия запрета на доступ к сетевым папкам. Для осуществления активации протокола потребуется зайти в Windows Features (Компоненты Windows), отыскать в каталоге SMB 1.0/CIFS File Sharing Support, развернуть папку, и проставить галочки напротив пунктов SMB 1.0/CIFS Client, SMB 1.0/CIFS Automatic Removal и SMB 1.0/CIFS Server. Активировать все позиции одновременно, можно, проставив флажок напротив названия каталога. После подтверждения изменений потребуется перезапустить ПК.
Сняв ограничение по протоколу, пользователю стоит понимать, что риск заражения системы в этом случае значительно повышается.
Метод деактивации протокола SMBv1
Если работа с файловыми приложениями, требующими поддержки SMBv1, не предусматривается, то необходимо его деактивировать. Отключение SMBv1 – это не очень сложный процесс. Отключить протокол SMBv1 в Windows 7 можно внесением изменений в реестр. При работе с реестром стоит быть очень внимательным, так как некорректные операции в его структуре могут стать причиной нарушения целостности системы, с последующим выходом её из строя или же существенным нарушением работоспособности. Чтобы отключить протокол SMBv1 потребуется пошагово выполнить следующие манипуляции:
- Для начала необходимо найти в «Редактор реестра», через меню «Пуск», или введением команды Regedit в поисковой строке.
- Запустить «Редактор реестра» от имени «Администратора», щёлкнув правой кнопкой мышки по его названию.
- В левой области открывшегося окна потребуется найти пункт с названием HKEY_LOCAL_MACHINE в папку SYSTEM, где перейти CurrentControlSet/Services/LanmanServer.
- Развернув папку LanmanServer, пользователь получит доступ к подразделу Parameters, в котором потребуется создать новый компонент. Для этого щелчком правой кнопки мышки по папке Parameters разворачивается выпадающий список, дальше выбрать команду «Создать», выбрать «Параметр DWORD (32 бит)».
- Созданному элементу необходимо присвоить имя SMB1. По умолчанию, компонент формируется с нулевым значением, что сбрасывает необходимость редактирования параметра: цифра «0» в этом случае интерпретируется как «отключение протокола».
Дальше перезагружаем ПК, посредством чего активируем выполненные изменения, и тем самым отключаем SMBv1 в Windows 7. В деактивированном режиме модуль больше не будет выступать уязвимым местом для вирусных атак, использующих для внедрения в систему первый протокол связи категории SMB.
Для Windows 8 и последующих версий регламент операции отключения поддержки SMBv1, выглядит следующим образом:
- Через «Панель управления» необходимо зайти в пункт «Программы», с последующим переходом в конфигурацию «Программы и компоненты», где выбрать задачу «Включение и отключение компонентов Windows».
- В открывшемся окне потребуется отыскать компонент под названием «SMB 1.0 GIFS…», удалить напротив него «галочку», и подтвердить изменение нажатием кнопки ОК внизу экрана.
После подтверждения изменений система «предложит» перезагрузить ПК, чтобы внесённые обновления активизировались.
Подведение итогов
В статье дан метод отключения протокола SMBv1 для Windows 7, 8 и 10. При потребности обезопасить несколько компьютеров одновременно, работающих по сетевому принципу, потребуется описанные манипуляции выполнить посредством групповой политики безопасности. Помните, безопасность системы должна выступать приоритетным критерием для пользователя ПК, а так как отключение конфигурации рекомендуется даже разработчиками ОС, то игнорировать этот процесс не стоит.
How to enable and disable SMBv1, SMBv2, and SMBv3 in Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, and 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.
Summary
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
In Windows 8 and Windows Server 2012, disabling SMBv3 deactivates the following functionality (and also the SMBv2 functionality that is 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
More information
The SMBv2 protocol was introduced in Windows Vista and Windows Server 2008.
The SMBv3 protocol was introduced in Windows 8 and Windows Server 2012.
For more information about the capabilities of SMBv2 and SMBv3 capabilities, go to the following Microsoft TechNet websites:
Server Message Block overview
What’s New in SMB
-
How to enable or disable SMB protocols on the SMB server
Windows 8 and Windows Server 2012
Windows 8 and Windows Server 2012 introduce the new Set-SMBServerConfiguration Windows PowerShell cmdlet. The cmdlet enables you to enable or disable the SMBv1, SMBv2, and SMBv3 protocols on the server component.
Notes When you enable or disable SMBv2 in Windows 8 or in Windows Server 2012, SMBv3 is also enabled or disabled. This behavior occurs because these protocols share the same stack.
You do not have to restart the computer after you run the Set-SMBServerConfiguration cmdlet.
- To obtain the current state of the SMB server protocol configuration, run the following cmdlet:
Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol
- To disable SMBv1 on the SMB server, run the following cmdlet:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
- To disable SMBv2 and SMBv3 on the SMB server, run the following cmdlet:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
- To enable SMBv1 on the SMB server, run the following cmdlet:
Set-SmbServerConfiguration -EnableSMB1Protocol $true
- To enable SMBv2 and SMBv3 on the SMB server, run the following cmdlet:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Windows 7, Windows Server 2008 R2, Windows Vista, and Windows Server 2008
To enable or disable SMB protocols on an SMB Server that is runningWindows 7, Windows Server 2008 R2, Windows Vista, or Windows Server 2008, use Windows PowerShell or Registry Editor.
Windows PowerShell 2.0 or a later version of PowerShell
- To disable SMBv1 on the SMB server, run the following cmdlet:
Set-ItemProperty -Path «HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters» SMB1 -Type DWORD -Value 0 -Force
- To disable SMBv2 and SMBv3 on the SMB server, run the following cmdlet:
Set-ItemProperty -Path «HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters» SMB2 -Type DWORD -Value 0 -Force
- To enable SMBv1 on the SMB server, run the following cmdlet:
Set-ItemProperty -Path «HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters» SMB1 -Type DWORD -Value 1 -Force
- To enable SMBv2 and SMBv3 on the SMB server, run the following cmdlet:
Set-ItemProperty -Path «HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters» SMB2 -Type DWORD -Value 1 -Force
Note You must restart the computer after you make these changes.
Registry Editor
Important This article contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:
322756 How to back up and restore the registry in Windows
To enable or disable SMBv1 on the SMB server, configure the following registry key:
Registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\ParametersRegistry entry: SMB1
REG_DWORD: 0 = Disabled
REG_DWORD: 1 = Enabled
Default: 1 = Enabled To enable or disable SMBv2 on the SMB server, configure the following registry key:Registry subkey:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Registry entry: SMB2
REG_DWORD: 0 = Disabled
REG_DWORD: 1 = Enabled
Default: 1 = EnabledHow to enable or disable SMB protocols on the SMB client
Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, and Windows Server 2012
Note When you enable or disable SMBv2 in Windows 8 or in Windows Server 2012, SMBv3 is also enabled or disabled. This behavior occurs because these protocols share the same stack.
- To disable SMBv1 on the SMB client, run the following commands:
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsisc.exe config mrxsmb10 start= disabled
- To enable SMBv1 on the SMB client, run the following commands:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi sc.exe config mrxsmb10 start= auto
- To disable SMBv2 and SMBv3 on the SMB client, run the following commands:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi sc.exe config mrxsmb20 start= disabled
- To enable SMBv2 and SMBv3 on the SMB client, run the following commands:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi sc.exe config mrxsmb20 start= auto
Notes
- You must run these commands at an elevated command prompt.
- You must restart the computer after you make these changes.
- To obtain the current state of the SMB server protocol configuration, run the following cmdlet:
Published: 21/10/16 — 08:51:30 (Amanda Higgins)
Related Articles
Running DE8 on Windows Servers, do and dont’s (SMB1,SMB2,SMB3 and OpLocks)
With the release of DataEase 8.0, 8.1, 8.2 and Windows 7, 8 , 8.1 and Windows Server 2012 R2, we are frequently asked about how new versions of DataEase work when connecting to old versions of Windows servers and old versions of DataEase connecting to new…
Other sources of Network problems
This is a little old, but it is still useful. If you have switched off SMB2 and SMB3 on your networ as well as disabled OpLocks for SMB1 and still have problems with corruption, have a look below and see if some of these things might apply to your network…
Environment Variables in Windows XP, WIndows 7 and 8 (Complete List)
Environment variables is very useful to make general code. You can include them in paths directly to access files native to an active user/workstation/profile/session etc….