Все способы:
- Шаг 1: Активация компонента
- Шаг 2: Проверка и настройка
- Вариант 1: Клиент
- Вариант 2: Сервер
- Шаг 3: Подключение
- Вопросы и ответы: 2
Шаг 1: Активация компонента
По умолчанию компонент, отвечающий за работу службы Samba (SMB), отключен в Windows 10, поэтому перед настройкой его следует активировать. Делается это в специальном меню «Панели управления». Достаточно будет открыть окно «Компоненты Windows» и установить отметку напротив пункта «Поддержка общего доступа к файлам SMB 1.0/CIFS». В завершение следует перезапустить компьютер, чтобы внесенные изменения зарегистрировались в системе. При надобности обратитесь за помощью к тематической статье на нашем сайте — в ней автор описал эту процедуру более подробно. Там же вы сможете найти альтернативные методы выполнения поставленной задачи. Для ознакомления с темой перейдите по ссылке ниже.
Подробнее: Как включить SMBv1 в Windows 10
Шаг 2: Проверка и настройка
После того как компонент «Поддержка общего доступа к файлам SMB 1.0/CIFS» будет включен, необходимо проверить его работу и выполнить запуск. Для клиентской и серверной части эти действия выполняются по-разному. Подробнее о них будет рассказано дальше по тексту.
Вариант 1: Клиент
Если вы собираетесь настроить клиентскую часть SMB, запустите оболочку «Windows PowerShell» от имени администратора и выполните несколько команд. Делается это следующим образом:
- Запустите оболочку любым доступным способом. Например, сделать это можно посредством поиска по системе. Установите курсор в соответствующее поле на панели задач, введите запрос «Windows PowerShell» и в результате щелкните по пункту «Запуск от имени администратора».
Читайте также: Как открыть Windows PowerShell в Windows 10
- При появлении диалогового окна контроля учетных записей щелкните по кнопке «Да», чтобы разрешить запуск оболочки.
- В появившееся окно «Windows PowerShell» вставьте команду
sc.exe qc lanmanworkstation
и нажмите Enter для ее выполнения.В результате появится информация, касающаяся клиентской части службы SMB. Здесь вам необходимо обратить внимание на строку «Зависимости». Важно, чтобы в списке была указана службы под названием «MRxSmb20». Если она есть, значит, все нормально и клиент Samba настроен правильно.
- Если в списке «MRxSmb20» отсутствует, следует вручную включить эту службу. Сделать это можно посредством редактирования системного реестра или путем ввода специальных команд в «Windows PowerShell». Во втором случае воспользуйтесь приведенными ниже командами. Поочередно вставьте их в консоль и нажмите по клавише Enter для выполнения.
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb10 start= auto
Если после ввода команд на экране появлялось сообщение «[SC] ChangeServiceConfig: успех», значит, вы все выполнили верно и клиентская часть Samba полностью настроена.
Вариант 2: Сервер
Серверная часть SMB настраивается похожим образом, но прежде следует проверить ее статус посредством специальной команды, приведенной ниже. Откройте «Windows PowerShell» от имени администратора, как это было показано ранее, а затем выполните команду.
PowerShell Get-SmbServerConfiguration | Select EnableSMB1Protocol
Наличие в столбце «EnableSMB1Protocol» значения «True» означает, что сервер настроен корректно и готов к работе. В противном случае вам необходимо выполнить настройку вручную. Для этого сделайте следующие действия:
- Впишите в «Windows PowerShell» команду
Set-SmbServerConfiguration -EnableSMB1Protocol $true
и нажмите Enter, чтобы ее выполнить.При появлении запроса подтверждения впишите символ «Y» (без кавычек) и нажмите по клавише Enter. Это нужно для завершения выполнения команды.
- После этого окно консоли вы можете закрыть, оставшиеся действия выполняются в «Редакторе реестра». Откройте его через системный поиск или утилиту «Выполнить», вызываемую сочетанием клавиш Win + R. Вставьте в поле «Открыть» команду
regedit
и кликните по кнопке «ОК».При появлении диалогового окна контроля учетных записей кликните по кнопке «Да», чтобы разрешить запуск «Редактора реестра».
- В появившемся окне приложения воспользуйтесь древовидной структурой каталогов в левой части интерфейса, чтобы перейти по указанному далее пути. Вы также можете сделать это намного быстрее — вставив адрес в адресную строку, находящуюся сверху. Просто скопируйте путь и вставьте его туда, а для перехода нажмите по клавише Enter.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
- Находясь в целевой директории, найдите в ней параметр под названием «SMB1» и откройте его свойства. Для этого щелкните по нему правой кнопкой мыши и из появившегося контекстного меню выберите пункт «Изменить».
- В поле «Значение» введите цифру «1» (без кавычек) и нажмите по кнопке «ОК», чтобы сохранить внесенные изменения.
Как только все описанные действия будут выполнены, настройку серверной части службы Samba можно считать оконченной.
Шаг 3: Подключение
Теперь, когда служба SMB настроена, можно непосредственно пробовать подключаться к серверу. Делается это стандартным способом через меню сетевого диска. Открыть его вы можете через файловый менеджер «Проводник». По итогу вам нужно будет присвоить букву новому диску, ввести адрес сервера Samba и нажать на «Готово». Подробнее об этом рассказывается в другой статье на нашем сайте. Ознакомиться с ее содержанием вы можете посредством следующей ссылки.
Подробнее: Как подключить сетевой диск в Windows 10
Читайте также: Что делать, если не удается подключить сетевой диск в Windows 10
Наша группа в TelegramПолезные советы и помощь
Как включить или отключить протокол SMB 1.0 в Windows 10/11 и Windows Server?
Протокол доступа к общим файлам SMB 1.0 (Server Message Block) по умолчанию отключен в последних версиях 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 состоит из двух компонентов, которые можно включать/отключать по отдельности:
- Клиент SMB0 – нужен для доступа к общим папками на других компьютерах
- Сервер SMB 0 – должен быть включен, если ваш компьютер используется в качестве файлового сервера, к которому подключаются другие компьютеры и устройства.
Включить/отключить SMB 1.0 в Windows 10 и 11
Начиная с Windows 10 1709, протокол SMB 1 отключен в десктопных версиях 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 из панели Windows Features ( optionalfeatures.exe ). Разверните ветку Поддержка общего доступа к файлам SMB 1.0 /CIFS (SMB 1.0/CIFS File Sharing Support). Как вы видите здесь также доступны 3 компонента:
- Клиент SMB 1.0/CIFS (SMB 1.0/CIFS Client)
- Сервер SMB 1.0/CIFS (SMB 1.0/CIFS Server)
- Автоматическое удаление протокола SMB0/CIFS (SMB 1.0/CIFS Automatic Removal)
Клиент SMB v1.0 нужно установить, если вашему компьютеру нужен доступ к сетевым папкам на старых устройствах. Если устаревшие сетевые устройства должны писать данные в сетевые папки на вашем компьютере, или использовать его общие сетевые принтеры, нужно включить сервер SMB 1.
Вы можете включить клиент или сервер SMB 1.0 в Windows 10/11 из панели окна управления компонентами или с помощью команд:
Dism /online /Enable-Feature /FeatureName:»SMB1Protocol»
Dism /online /Enable-Feature /FeatureName:»SMB1Protocol-Client»
Dism /online /Enable-Feature /FeatureName:»SMB1Protocol-Server
Также можно включить сервер или клиент SMBv1 с помощью PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Server
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client
Если после включения клиента SMBv1, он не используется более 15 дней, он автоматически отключается.
Чтобы выключить SMB1 в Windows, выполните следующие команды DISM:
Dism /online /Disable-Feature /FeatureName:»SMB1Protocol»
Dism /online /Disable-Feature /FeatureName:»SMB1Protocol-Client»
Dism /online /Disable-Feature /FeatureName:»SMB1Protocol-Server»
Или удалите компоненты SMB1Protocol с помощью PowerShell:
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -Remove
Если вы отключили поддержку SMBv1 клиента в Windows 10/11, то при доступе к сетевой папке на файловом сервере (устройстве), который поддерживает только SMBv1, появятся ошибки вида:
- 0x80070035 — не найден сетевой путь;
Вы не можете подключиться к общей папке, так как она небезопасна. Эта общая папка работает по устаревшему протоколу SMB1, который небезопасен и может подвергнуть вашу систему риску атаки. Вашей системе необходимо использовать SMB2 или более позднюю версию.
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
;
Вы не можете подключиться к общей папке, так как она небезопасна. Эта общая папка работает по устаревшему протоколуSMB1, который небезопасен и может подвергнуть вашу систему риску атаки. Вашей системе необходимо использовать SMB2 или более позднюю версию.
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).
Также при отключении клиента SMBv1 на компьютере перестает работать служба Computer Browser (Обозреватель компьютеров), которая используется устаревшим протоколом NetBIOS для обнаружения устройств в сети. Для корректного отображения соседних компьютеров в сетевом окружении Windows нужно настроить службу Function Discovery Provider Host.
Включение и отключение SMB 1.0 в Windows Server 2019/2022
В Windows Server 2019 и 2022 компоненты протокола SMBv1 также по умолчанию отключены. Включить SMB v1 в этих версиях можно через Server Manager (компонент SMB 1.0/CIFS File Sharing Support) или с помощью PowerShell.
Проверить, включен ли SMB 1.0 в Windows Server с помощью команды PowerShell:
Get-WindowsFeature | Where-Object {$_.name -like «*SMB1*»} | ft Name,Installstate
Чтобы установить клиент SMB 1, выполните команду:
Install-WindowsFeature FS-SMB1-CLIENT
Включить поддержку серверной части SMB 1.0:
Install-WindowsFeature FS-SMB1-SERVER
Затем проверьте, что протокол SMB 1 включен в настройках SMB сервера. Если протокол отключен, включите его:
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 с диска, выполните:
Uninstall-WindowsFeature -Name FS-SMB1 -Remove
В Windows 7/8 и Windows Server 2008 R2/ 2012 можно отключать службу и драйвер доступа SMBv1 командами:
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled
Аудит доступа к файловому серверу по SMB v1.0
Перед отключением и полным удалением драйвера SMB 1.0 на стороне файлового сервера желательно убедится, что в сети не осталось устаревших клиентов, которые используют для подключения протокол SMB v1.0. Чтобы найти таких клиентов, нужно включить аудит доступа к файловому серверу по SMB1 протоколу:
Set-SmbServerConfiguration –AuditSmb1Access $true
Через пару дней откройте на сервере журнал событий Event Viewer -> Applications and Services -> Microsoft -> Windows -> SMBServer -> Audit и проверьте, были ли попытки доступа к ресурсам сервера по протоколу SMB1.
Совет. Список событий из журнала Event Viewer можно вывести командой PowerShell:
Get-WinEvent -LogName Microsoft-Windows-SMBServer/Audit
Проверьте, есть ли в журнале событие с 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, нужно полностью отключить эту версию протокола на всех компьютерах. Чтобы предотвратить ручную установку и включение компонентов SMB 1.0 на компьютерах в домене AF, можно внедрить групповую политику, которая будет принудительно отключить протокол SMB 1.0 на всех серверах и компьютерах. Т.к. в стандартных политиках Windows нет политики настройки компонентов SMB, придется отключать его через политику реестра.
- Откройте консоль управления Group Policy Management ( gpmc.msc ), создайте новый объект GPO (disableSMBv1) и назначьте его на OU с компьютерами, на которых нужно отключить SMB1;
- Перейдите в режим редактирования политики. Выберите Computer Configuration -> Preferences -> Windows Settings -> Registry;
- Создайте новый параметр реестра (Registry Item) со следующими настройками:
Action: Update
Hive: HKEY_LOCAL_MACHINE
Key Path: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Value name: SMB1
Value type: REG_DWORD
Value data: 0 - Данная политика отключит службу сервера SMBv1.
Если вы хотите через GPO отключить на компьютерах и клиент SMB 1.0, создайте дополнительно два параметра реестра:
- Параметр Start (типа REG_DWORD) со значением 4 в ветке реестра HKLM\SYSTEM\CurrentControlSet\services\mrxsmb10;
- Параметр DependOnService (типа REG_MULTI_SZ) со значением Bowser, MRxSmb20, NSI (каждое значение с новой строки) в ветке реестра HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation.
Осталось обновить настройки групповых политик на клиентах и после перезагрузки проверить, что компоненты SMBv1 полностью отключены.
С помощью WMI фильтр GPO можно сделать исключения для определенных версий Windows.
В групповых политиках Security Baseline из Microsoft Security Compliance Toolkit есть отдельный административный шаблон GPO (файлы SecGuide.adml и SecGuide.ADMX), в которых есть отдельные параметры для отключения сервера и клиента SMB:
- Configure SMB v1 server;
- Configure SMB v1 client driver.
В Windows 10 версии 1709, Windows 10 версии 1903, Windows Server версии 1709, Windows Server версии 1903 и более поздних версиях Windows клиент SMB2 больше не поддерживает следующие действия:
- Доступ гостевой учетной записи к удаленному серверу
- Переключение на гостевую учетную запись после ввода недопустимых учетных данных
SMBv2 в этих версиях Windows ведет себя следующим образом:
- Windows 10 Корпоративная и Windows 10 для образовательных учреждений больше не позволяют пользователю подключаться к удаленному общему ресурсу с помощью учетных данных гостя, даже если удаленный сервер запрашивает учетные данные гостя.
- Windows Server 2016 Datacenter и Standard Edition больше не позволяют пользователю подключаться к удаленному общему ресурсу с помощью учетных данных гостя, даже если удаленный сервер запрашивает учетные данные гостей.
- Версии Windows 10 Home и Professional не изменились по сравнению с предыдущим поведением по умолчанию.
С данной проблемой можно столкнуться при использовании старых версий NAS или при доступе к сетевым папкам на старых версиях Windows7/2008 R2 или Windows XP /2003 при использовании анонимного гостевого доступа.
Изменения при использовании протокола SMB связаны с тем, что при доступе под гостевым аккаунтом по протоколу SMBv1/v2 не применяются такие методы защиты трафика, как SMB подписывание и шифрование, что делает вашу сессию уязвимой против MiTM (man-in-the-middle) атак.
Решение со стороны сервера SMB
В данном случае Microsoft рекомендует изменить настройки на удалённом компьютере или NAS устройстве, которое раздаёт сетевые папки. Рекомендуется использовать сетевой пртокол SMBv3, в случае если устройство поддерживает только SMBv2, настроить доступ с аутентификацией.
- NAS устройство — отключите гостевой доступ в настройках устройства
- Samba сервер на Linux — в конфигурационном файле smb.config в разделе [global] необходимо добавить строку
map to guest = never
в разделе с описанием сетевой папки запретить анонимный доступguest ok = no
- Windows — включаем общий доступ к сетевым папкам и принтерам по паролю. В разделе Control Panel\ All Control Panel Items\ Network and Sharing Center\ Advanced sharing settings, для All Networks в разделе Password Protected Sharing (Общий доступ с парольной защитой) изменить значение на «Turn on password protected sharing» (Включить общий доступ с парольной защитой). При этом анонимный (гостевой) доступ к папкам будет отключен. Будет необходимо создать локальных пользователей, предоставить права к сетевым папкам и принтерам и использовать данные учётные записи для подключения к общим папкам.
Решение со стороны клиента SMB (не рекомендуется к использованию, только как временное решение)
Для разрешения гостевого доступа с Вашего компьютера необходимо выполнить следующее: открыть редактор групповых политик gpedit.msc, перейти в следующий раздел Computer Configuration ->Administrative templates -> Network -> Lanman Workstation (Конфигурация компьютера -> Административные шаблоны -> Сеть -> Рабочая станция Lanman), включите политику Enable insecure guest logons (Включить небезопасные гостевые входы)
При использовании Windows 10 Home (в нем нет редактора GPO) для внесения изменений необходимо произвести редактирование реестра:
HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters “AllowInsecureGuestAuth”=dword:1
или через команду:
reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters /v AllowInsecureGuestAuth /t reg_dword /d 00000001 /f
Использование протокола старше SMBv2
Клиент SMBv1 по умолчанию отключен начиная с Windows 10 1709. В сетевом окружении данные сетевые папки \сетевые устройства неотображаются и при открытии по UNC пути появляться ошибка 0x80070035. Данная ошибка чётко указывает, что сетевая папка поддерживает только SMBv1 протокол доступа. В этом случае нужно перенастроить удаленное SMB устройство для поддержки как минимум SMBv2 (правильный и безопасный путь).
Если сетевые папки раздает Samba на Linux, вы можете указать минимально поддерживаемую версию SMB в файле smb.conf так:
[global] server min protocol = SMB2_10 client max protocol = SMB3 client min protocol = SMB2_10 encrypt passwords = true restrict anonymous = 2
В Windows 7/Windows Server 2008 R2 вы можете отключить SMBv1 и разрешить SMBv2 так:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 –Force
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 –Force
Если ваше устройство (NAS, компьютер под управлением Windows XP, Windows Server 2003), поддерживает только протокол SMBv1, в Windows 10 Вы можете включить отдельный компонент SMB1Protocol-Client. (Крайне не рекомендуется)
Запустите консоль PowerShell и проверьте, что SMB1Protocol-Client отключен (State: Disabled
):
Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client
Включите поддержку протокола SMBv1 (потребуется перезагрузка):
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client
Также вы можете включить/отключить дополнительные компоненты Windows 10 (в том числе SMBv1) из меню optionalfeatures.exe
-> SMB 1.0/CIFS File Sharing Support
В Windows 10 1709 и выше клиент SMBv1 автоматически удаляется, если он не использовался более 15 дней (отвечает компонент SMB 1.0/CIFS Automatic Removal).
Протокол SMBv1 в последних версиях Windows по умолчанию отключен, однако в некоторых случаях может потребоваться его включение: как правило, речь идёт о необходимости подключения устаревшего оборудования и компьютеров.
В этой инструкции подробно о том, как включить протокол SMB1 на сервере и клиенте в Windows 11 и Windows 10. Примечание: указанный протокол в настоящее время считается небезопасным и без необходимости включать его не следует.
Включение компонента SMB 1.0
Прежде всего, в новых версиях Windows 11/10 потребуется включить отключенный по умолчанию компонент для поддержки SMBv1, для этого:
- Нажмите клавиши Win+R на клавиатуре, введите appwiz.cpl и нажмите Enter.
- В открывшемся окне в списке слева нажмите «Включение или отключение компонентов Windows».
- Включите компонент «Поддержка общего доступа к файлам SMB 1.0/CIFS» и нажмите «Ок».
- Дождитесь установки необходимых компонентов и перезагрузите компьютер.
Также вы можете включить компонент с помощью команды PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
После того, как компонент был установлен, может потребоваться включить использование протокола SMB1 для сервера или клиента — в Windows 11 и 10 это выполняется отдельно.
Проверка и включение SMB 1 на клиенте
Для проверки состояния клиентской части протокола SMB1 в Windows 11 и Windows 10 используйте PowerShell или командную строку, запущенную от имени администратора и следующую команду:
sc.exe qc lanmanworkstation
Если в разделе «Зависимости» отсутствует запись mrxsmb10, протокол 1-й версии отключен. Для его включения можно использовать команды:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi sc.exe config mrxsmb10 start= auto
То же самое можно проделать в редакторе реестра:
- В разделе
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\mrxsmb10
для параметра Start установить значение 2
- В разделе
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation
изменить параметр DependOnService, добавив в него строку mrxsmb10
После внесения изменений в реестре, перезагрузите компьютер.
На сервере
Чтобы проверить состояние сервера SMB1 в Windows 11/10 используйте команду
PowerShell Get-SmbServerConfiguration | Select EnableSMB1Protocol
Если в результате вы увидите значение True, использование протокола включено.
При значении False вы можете включить его с помощью команды:
Set-SmbServerConfiguration -EnableSMB1Protocol $true
Для включения SMBv1 на сервере в реестре, измените значение параметра DWORD с именем SMB1 на 1 в разделе реестра
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Внимание: по умолчанию параметр отсутствует в этом разделе реестра (при его отсутствии считается, что серверный протокол SMB1 включен). При необходимости вы можете его создать.
Внеся изменения в реестр, выполните перезагрузку компьютера.
The following post shows detailed steps to enable and disable the Server Message Block (SMB) versions SMBv1, SMBv2 & SMBv3 on the SMB server and SMB client. The SMBv2 protocol was introduced in Windows Vista & Windows Server 2008 and the SMBv3 was introduced in Windows 8 and Windows Server 2012.
The steps apply only to the following Windows versions:
• Windows Vista Enterprise
• Windows Vista Business
• Windows Vista Home Basic
• Windows Vista Home Premium
• Windows Vista Ultimate
• Windows 7 Enterprise
• Windows 7 Home Basic
• Windows 7 Home Premium
• Windows 7 Professional
• Windows 7 Ultimate
• Windows Server 2008 Datacenter
• Windows Server 2008 Enterprise
• Windows Server 2008 Standard
• Windows Server 2008 R2 Datacenter
• Windows Server 2008 R2 Enterprise
• Windows Server 2008 R2 Standard
• Windows 8
• Windows 8 Enterprise
• Windows 8 Pro
• Windows Server 2012 Datacenter
• Windows Server 2012 Essentials
• Windows Server 2012 Foundation
• Windows Server 2012 Standard
Important to Note:
It is recommended not to keep the SMBv2 or SMBv3 disabled. It should only be disabled for temporary troubleshooting. Keeping it disabled may deactivate various functions of the Windows server. The features which might get deactivated due to disabling SMBv2 & SMBv3 are mentioned below:
Disabling SMBv2 on Windows 7 & Windows Server 2008 R2 will deactivate the below functions:
• Request compounding – it enables users to send 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 – when a temporary disconnection is there, it enables for connection to transparently rejoin to the server
• Improved message signing – HMAC SHA-256 replaces MD5 as hashing algorithm
• Improved scalability for file sharing – increases the no. of users, shares, and open files per server
• Support for symbolic links
• Client oplock leasing model – it automatically limits the volume of data transferred between the client and server, resulting in improved performance on high-latency networks and increasing the scalability of SMB server
• Large MTU support – for full use of 10-gigabyte (GB) Ethernet
• Enhanced energy efficiency – clients that have open files to a server can sleep
Disabling SMBv3 on Windows 8 & Windows Server 2012 will deactivate the below as well as above mentioned functions:
• Transparent Failover – it enables clients to rejoin the cluster nodes during the maintenance or failover without any interruption
• Scale Out – it allows 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 – offers end-to-end encryption and completely defends from snooping on untrustworthy networks
• Directory Leasing – its caching functionality helps in improving the application response times in branch offices
• Performance Optimizations – optimizations for small random read/write I/O
Steps to Enable and Disable SMB Protocols on the SMB Server
Microsoft Windows 8 and Windows Server 2012 have introduced a new cmdlet [Set-SMBServerConfiguration] in the Windows PowerShell which allows you to enable and disable the SMBv1, SMBv2 & SMBv3 protocols on the server. When you enable or disable the Server Message Block version 2 (SMBv2) in Windows 8 or in Windows Server 2012, automatically the SMBv3 is enabled or disabled, as the same stack is shared by the SMB protocols. Also, there is no need to restart your system once you run the Set-SMBServerConfiguration cmdlet.
Get the current state of the configuration of the SMB server protocol by running the below command:
Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol
Disables the SMBv1 on the SMB server by running the below command:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
Disables the SMBv2 and SMBv3 on the SMB server by running the below command:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
Enables the SMBv1 on the SMB server by running the below command:
Set-SmbServerConfiguration -EnableSMB1Protocol $true
Enables the SMBv2 and SMBv3 on the SMB server by running the below command:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Steps to Enable and Disable the SMB protocols on SMB Server running Windows 7, Windows Server 2008 R2, Windows Vista, or Windows Server 2008.
Using the Windows PowerShell 2.0 or later version:
Disables the SMBv1 on the SMB server by running the below command:
Set-ItemProperty -Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” SMB1 -Value 0 –Force
Disables the SMBv2 and SMBv3 on the SMB server by running the below command:
Set-ItemProperty –Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” SMB2 –Value 0 –Force
Enables the SMBv1 on the SMB server by running the below command:
Set-ItemProperty –Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” SMB1 –Value 1 –Force
Enables the SMBv2 and SMBv3 on the SMB server by running the below command:
Set-ItemProperty -Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” SMB2 -Value 1 -Force
Note that you need to restart your system after making changes to the SMB server.
Using Registry Editor:
Important to Note:
• Before making any changes to the registry, make sure to back up it.
Steps to enable and disable the SMBv1 on the SMB server using the registry:
Registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Registry entry: SMB1
REG_DWORD: 0 = Disabled
REG_DWORD: 1 = Enabled
Default: 1 = Enabled
Steps to enable and disable SMBv2 on the SMB server using the registry:
Registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Registry entry: SMB2
REG_DWORD: 0 = Disabled
REG_DWORD: 1 = Enabled
Default: 1 = Enabled
Steps to Enable and Disable SMB protocols on the SMB client
The below steps apply to Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, and Windows Server 2012.
Disables the SMBv1 on the SMB client by running the below commands:
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled
Enables the SMBv1 on the SMB client by running the below commands:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb10 start= auto
Disables the SMBv2 and SMBv3 on the SMB client by running the below commands:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
sc.exe config mrxsmb20 start= disabled
Enables the SMBv2 and SMBv3 on the SMB client by running the below commands:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb20 start= auto
Important to Note:
• The commands be run at a raised command prompt.
• The system must be restarted once you make these changes.