→ Протокол samba и windows 10. Боремся с вирусами и инфраструктурой, или отключение SMB v1. Как включить и отключить протоколы SMB на SMB-сервере

Протокол samba и windows 10. Боремся с вирусами и инфраструктурой, или отключение SMB v1. Как включить и отключить протоколы SMB на SMB-сервере

Аннотация

В этой статье описываются процедуры включения и отключения протокола Server Message Block (SMB) версии 1, SMB версии 2 (SMBv2) и SMB версии 3 (SMBv3) в клиентских и серверных компонентах SMB.

Предупреждение. Не рекомендуется отключать прокол 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 на 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. Это связано с использованием общего стека для этих протоколов.
После выполнения командлета

  • Чтобы получить текущее состояние конфигурации протокола SMB-сервера, выполните следующий командлет:

    Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol



  • Set-SmbServerConfiguration -EnableSMB1Protocol $false



  • Set-SmbServerConfiguration -EnableSMB2Protocol $false



  • Set-SmbServerConfiguration -EnableSMB1Protocol $true



  • 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 или редактором реестра.

Windows PowerShell 2.0 или более поздняя версия PowerShell


  • Чтобы отключить протокол SMB версии 1 на SMB-сервере, выполните следующий командлет:

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Serv ices\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 -Force



  • Чтобы отключить протоколы SMB версии 2 и 3 на SMB-сервере, выполните следующий командлет:

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Serv ices\LanmanServer\Parameters" SMB2 -Type DWORD -Value 0 -Force



  • Чтобы включить протокол SMB версии 1 на SMB-сервере, выполните следующий командлет:

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Serv ices\LanmanServer\Parameters" SMB1 -Type DWORD -Value 1 -Force



  • Чтобы включить протоколы SMB версии 2 и 3 на SMB-сервере, выполните следующий командлет:

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Serv ices\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 -Force


Примечание . После внесения этих изменений компьютер необходимо перезагрузить.

Редактор реестра

Внимание ! В статье содержатся сведения об изменении реестра. Перед внесением изменений рекомендуется создать резервную копию реестра. и изучить процедуру его восстановления на случай возникновения проблемы. Дополнительные сведения о создании резервной копии, восстановлении и изменении реестра см. в указанной ниже статье базы знаний Майкрософт. Чтобы включить или отключить протокол SMB версии 1 на SMB-сервере, настройте следующий раздел реестра:

Подраздел реестра: Запись реестра: SMB1
REG_DWORD: 0 = отключено
REG_DWORD: 1 = включено
По умолчанию: 1 = включено

Чтобы включить или отключить протокол SMB версии 2 на SMB-сервере, настройте следующий раздел реестра:

Подраздел реестра:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl Set\Services\LanmanServer\Parameters Запись реестра: SMB2
REG_DWORD: 0 = отключено
REG_DWORD: 1 = включено
По умолчанию: 1 = включено


sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi


sc.exe config mrxsmb10 start= disabled

  • Чтобы включить протокол SMB версии 1 на SMB-клиенте, выполните следующие команды:


    sc.exe config mrxsmb10 start= auto



  • Чтобы отключить протоколы SMB версии 2 и 3 на SMB-клиенте, выполните следующие команды:

    sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
    sc.exe config mrxsmb20 start= disabled



  • Чтобы включить протоколы SMB версии 2 и 3 на SMB-клиенте, выполните следующие команды:

    sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
    sc.exe config mrxsmb20 start= auto


Примечания.

  • Эти команды следует вводить в командной строке с повышенными привилегиями.

  • После внесения этих изменений компьютер необходимо перезагрузить.

Если вы из Windows 10 не можете открыть сетевые папки на других сетевых устройствах (NAS, Samba сервера Linux) или на компьютерах со старыми версиями Windows (Windows 7/ XP /2003), скорее всего проблема связана с тем, что в вашей новой версии Windows 10 отключена поддержка устаревших и небезопасных версий протокола SMB (используется в Windows для доступа к общим сетевым папкам и файлам). Так, начиная с Windows 10 1709, был отключен протокол SMBv1 и анонимный (гостевой) доступ к сетевым папкам по протоколу SMBv2.

Microsoft планомерно отключает старые и небезопасные версий протокола SMB во всех последний версиях Windows. Начиная с Windows 10 1709 и Windows Server 2019 (как в Datacenter так и в Standard ) в операционной системе по умолчанию (помните атаку , которая как раз и реализовалась через дыру в SMBv1).

Конкретные действия, которые нужно предпринять зависят от ошибки, которая появляется в Windows 10 при доступе к общей папке и от настроек удаленного SMB сервера, на котором хранятся общие папки.

Вы не можете получить гостевой доступ к общей папке без проверки подлинности

Начиная с версии Windows 10 1709 (Fall Creators Update) Enterprise и Education пользователи стали жаловаться, что при попытке открыть сетевую папку на соседнем компьютере стала появляться ошибка:

Вы не можете получить доступ к этой общей папке, так как политики безопасности вашей организации блокируют гостевой доступ без проверки подлинности. Эти политики помогают защитить ваш компьютер от небезопасных или вредоносных устройств в сети. An error occurred while reconnecting Y: to \\nas1\share Microsoft Windows Network: You can’t access this shared folder because your organization’s security policies block unauthenticated guest access. These policies help protect your PC from unsafe or malicious devices on the network.

При это на других компьютерах со старыми версиями Windows 8.1/7 или на Windows 10 с билдом до 1709, эти же сетевые каталоги открываются нормально. Эта проблем связана с тем, что в современных версиях Windows 10 (начиная с 1709) по умолчанию запрещен сетевой доступ к сетевым папкам под гостевой учетной записью по протоколу SMBv2 (и ниже). Гостевой (анонимный) доступ подразумевают доступ к сетевой папке без аутентификации. При доступе под гостевым аккаунтом по протоколу SMBv1/v2 не применяются такие методы защиты трафика, как SMB подписывание и , что делает вашу сессию уязвимой против MiTM (man-in-the-middle) атак.

При попытке открыть сетевую папку под гостем по протоколу SMB2, в журнале клиента SMB (Microsoft-Windows-SMBClient) фиксируется ошибка:

Source: Microsoft-Windows-SMBClient Event ID: 31017 Rejected an insecure guest logon.

В большинстве случае с этой проблемой можно столкнуться при использовании старых версий NAS (обычно для простоты настройки на них включают гостевой доступ) или при доступе к сетевым папкам на старых версиях Windows 7/2008 R2 или Windows XP /2003 с настроенным (гостевым) доступом (см. в разных версиях Windows).

В этом случае Microsoft рекомендует изменить настройки на удаленном компьютере или NAS устройстве, который раздает сетевые папки. Желательно переключить сетевой ресурс в режим SMBv3. А если поддерживается только протокол SMBv2, настроить доступ с аутентификацией. Это самый правильный и безопасный способ исправить проблему.

В зависимости от устройства, на котором хранятся сетевые папки, вы должны отключить на них гостевой доступ.


Есть другой способ – изменить настройки вашего SMB клиента и разрешить доступ с него на сетевые папки под гостевой учетной записью.

Чтобы разрешить гостевой доступ с вашего компьютера, откройте редактор групповых политик (gpedit.msc) и перейдите в раздел: Конфигурация компьютера -> Административные шаблоны -> Сеть -> Рабочая станция Lanman (Computer Configuration ->Administrative templates -> Network (Сеть) -> Lanman Workstation ). Включите политику Enable insecure guest logons (Включить небезопасные гостевые входы) .

Т.е. из сообщения об ошибке четко видно, что сетевая папка поддерживает только SMBv1 протокол доступа. В этом случае нужно попытаться перенастроить удаленное SMB устройство для поддержки как минимум SMBv2 (правильный и безопасный путь).

Если сетевые папки раздает Samba на Linux, вы можете указать минимально поддерживаемую версию SMB в файле smb.conf так:

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

Disable-WindowsOptionalFeature -Online -FeatureName "SMB1Protocol"
Set-SmbServerConfiguration –EnableSMB2Protocol $true

Если ваше сетевое устройство (NAS, Windows XP, Windows Server 2003), поддерживает только протокол SMB1, в 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 клиент. Не включайте компонент SMB1Protocol-Server, если ваш компьютер не используется устаревшими клиентами в качестве сервера для хранения общих папок.

После установки клиента SMBv1, вы должны без проблем подключиться к сетевой папке или принтеру. Однако, нужно понимать, что использование данного обходного решения не рекомендовано, т.к. подвергает вашу систему опасности.


В диалоговом окне Новые свойства реестра выберите следующее:


  • Действие: Создать

  • Куст : HKEY_LOCAL_MACHINE

  • Путь к разделу: SYSTEM\CurrentControlSet\Services\Lanman Server\Parameters

  • Имя параметра: SMB1

  • Тип значения: REG_DWORD.

  • Значение: 0

Это отключит серверные компоненты SMB версии 1. Эта групповая политика должна быть применена ко всем необходимым рабочим станциям, серверам и контроллерам домена в домене.

Примечание. Фильтры WMI могут быть также настроены для исключения не поддерживаемых операционных систем или выбранных исключений, таких как Windows XP.

Внимание! Будьте осторожны при внесении изменений на контроллерах, где для устаревших систем, таких как Windows XP или Linux более поздней версии, и сторонних систем (которые не поддерживают протоколы SMB версия 2 или SMB версии 3) требуется доступ к SYSVOL или другим общим папкам, в которых SMB версии 1 был отключен.


Отключение клиента SMB версия 1 с групповой политикой

Для отключения клиента SMB версии 1 ключ службы раздела реестра необходимо обновить для отключения запуска MRxSMB10 , и затем зависимость в MRxSMB10 должна быть удалена из записи для LanmanWorkstation , чтобы она могла быть запущена стандартным способом без запроса MRxSMB10 при первом запуске.

Это обновление заменяет значения по умолчанию в следующих двух элементах реестра

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl Set\services\mrxsmb10

Параметр: Пуск REG_DWORD: 4 = отключено

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl Set\Services\LanmanWorkstation

Параметр: DependOnService REG_MULTI_SZ: “Bowser”,”MRxSmb20″,”NSI”

Примечание. По умолчанию содержит MRxSMB10, который в настоящее время исключен как зависимость

Для настройки с использованием групповой политики:


  1. Откройте Консоль управления групповыми политиками . Щелкните правой кнопкой мыши "Объект групповой политики (GPO)", который должен содержать новый предпочтительный элемент, затем нажмите Изменить .

  2. В дереве консоли в разделе Конфигурация компьютера разверните папку Настройки , затем разверните папку Параметры Windows .

  3. Щелкните правой кнопкой мыши узел Реестр , нажмите Новый и выберите Элемент реестра .

В диалоговом окне Новые свойства реестра выберите следующее:


  • Действие: Обновление

  • Куст : HKEY_LOCAL_MACHINE

  • Путь к разделу: SYSTEM\CurrentControlSet\services\mrxsmb 10

  • Имя параметра: Start

  • Тип значения: REG_DWORD.

  • Значение данных : 4

Затем удалите зависимость в MRxSMB10 , которая была отключена

В диалоговом окне Новые свойства реестра выберите следующее:


  • Действие: Замените

  • Куст : HKEY_LOCAL_MACHINE

  • Путь к разделу: SYSTEM\CurrentControlSet\Services\Lanman Workstation

  • Имя параметра: DependOnService

  • Тип парамтера REG_MULTI_SZ

  • Значение данных :

    • Bowser

    • MRxSmb20



Примечание. У эти трех строк, не будет маркеров (см. ниже)

Значения по умолчанию содержат MRxSMB10 в большом количестве версий Windows, поэтому замена их многозначной строкой приведет к удалению MRxSMB10 как зависимости для LanmanServer и переходу от четырех значений по умолчанию к только трем значениям, описанным выше.

Примечание. При использовании Консоли управления групповыми политиками не нужно использовать кавычки или запятые. Просто введите каждую запись отдельной строкой, как указано выше

Требуется перезагрузка:

После применения политики и ввода параметров реестра SMB версия 1 будет отключена после перезагрузки системы.

Аннотация

Если все параметры находятся в одном Объекте групповой политики (GPO), то Управление групповыми политиками отобразит параметры ниже.

Тестирование и проверка

После настройки дайте разрешение политике выполнить репликацию и обновление. Поскольку это необходимо для тестирования, запустите gpupdate /force из строки CMD.EXE и затем просмотрите целевые машины, чтобы параметры реестра были применены правильно. Убедитесь, что SMB версия 2 и SMB версия 3 работают для всех систем в среде.

Внимание! Не забудьте перезагрузить целевые системы.

Последние масштабные вирусные атаки распространялись с использованием дыр и недостатков старого протокола SMB1. По одной из несущественных причин, операционная система Windows по-прежнему разрешает его работу по умолчанию. Эта старая версия протокола служит для совместного использования файлов в локальной сети. Его более новые версии 2 и 3 стали более защищенными и их стоит оставить включенными. Так, как вы используете новую операционную систему под номером 10 или предыдущую – 8 или даже уже устаревшую – 7, вы должны отключить этот протокол на вашем ПК.

Он включен только потому, что ещё некоторыми пользователями используются старые приложения, которые не были вовремя обновлены для работы с SMB2 или SMB3. Корпорация Майкрософт составила их список. Его, при необходимости, найдите и просмотрите в Интернете.

Если вы поддерживаете все свои программы, установленные на компьютере, в надлежащем состоянии (вовремя обновляете), вам вероятнее всего необходимо отключить этот протокол. Этим на один шаг увеличите защищенность своей операционной системы и конфиденциальных данных. Кстати, даже специалисты самой корпорации рекомендуют его отключать, в случае необходимости.

Вы готовы к внесению изменений? Тогда давайте продолжим.

SMB1

Откройте Панель управления, где перейдите в раздел “Программы” и выберите подраздел “Включение / отключение компонентов Windows”.

В списке найдите опцию “Поддержка общего доступа к файлам SMB 1.0/CIFS”, снимите с него отметку и нажмите кнопку “ОК”.

Перезагрузите операционную систему, предварительно сохранив все свои редактируемые перед этим файлы, такие как документы и т.п.

ДЛЯ WINDOWS 7

Здесь вам поможет редактирование системного реестра. Он является мощным инструментом системы и в случае внесения в него неправильных данных, может привести к нестабильной работе ОС. Используйте его с осторожностью, перед этим обязательно создайте резервную копию для отката.

Откройте редактор, для чего нажмите сочетание клавиш Win + R на клавиатуре и набрав “regedit” в поле для ввода. Далее пройдите по следующему пути:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

создайте новый 32-битный параметр DWORD и присвойте ему имя “SMB1” со значением “0”. Перезагрузите систему.

Внимание! Эти способы действуют для отключения протокола только на одном ПК, но не во всей сети. Обратитесь к официальной документации Microsoft за интересующей вас информацией.

Этой осенью Microsoft планирует полностью отключить протокол SMBv1 в Windows 10 .

Сетевой протокол SMB первой версии был разработан Microsoft уже пару десятков лет назад. Компания четко осознает, что дни данной технологии уже давно сочтены.

Тем не менее, данное изменение коснется только новые установки Windows 10. Если вы просто выполните обновление до Windows 10 Fall Creators Update , протокол все еще останется в системе.

В тестовой сборке Windows 10 Insider Preview build 16226 SMBv1 уже полностью отключен. В версиях Домашняя и Pro по умолчанию удален серверный компонент, но клиент SMB1 по-прежнему остается в системе. Это означает, что вы можете подключаться к устройствам по SMB1, но никто не сможет подключиться к вашей машине по нему. В версиях Enterprise и Education SMB1 отключен полностью.

Нед Пайл (Ned Pyle) из Microsoft пояснил, что основной причиной для данного решения стало повышение уровня безопасности:

“Это главная, но не единственная причина. Старый протокол был заменен более функциональным SMB2, которые предоставляет более широкие возможности. Версия 2.02 поставляется с Windows Server 2008 и является минимальной рекомендуемой версией SMB. Чтобы получить максимальную безопасность и функциональность, стоит использовать версию SMB 3.1.1. SMB 1 уже давно морально устарел”.

Хотя SMBv1 все еще останется на устройствах, обновленных до Windows 10 Fall Creators Update, его можно отключить вручную.

Как отключить SMB1 в Windows 10

  1. Наберите в поиске мню Пуск Панель управления и перейдите в "Программы и компоненты".
  2. В левом меню выберите опцию “Включение и отключение компонентов Windows”.
  3. Уберите галочку около объекта “Поддержка общего доступа к файлам SMB 1.0/CIFS ”.

или с помощью PowerShell:

  1. Щелкните правой кнопкой мыши по меню Пуск, выберите опцию Windows PowerShell (администратор)
  2. Выполните команду Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol

 

 

Это интересно: