Компьютер подвержен вирусным атакам, нередко выводящим его из строя. Для обеспечения безопасности используются антивирусные программы, а разработчики операционных систем снабжают свои продукты защитными компонентами, обеспечивающими базовую защиту. Кроме защитных инструментов, в системе имеются и «проблемные» компоненты, которыми злоумышленники могут воспользоваться с целью выполнения мошеннических операций. Об одном из инструментов такого класса, а именно о его надёжности и соответствии требованиям времени по защите устройств, пойдёт речь в этом повествовании. В этой статье расскажем, что собой являет протокол 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. При потребности обезопасить несколько компьютеров одновременно, работающих по сетевому принципу, потребуется описанные манипуляции выполнить посредством групповой политики безопасности. Помните, безопасность системы должна выступать приоритетным критерием для пользователя ПК, а так как отключение конфигурации рекомендуется даже разработчиками ОС, то игнорировать этот процесс не стоит.
Сетевой протокол 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:SYSTEMCurrentControlSetServicesLanmanServerParameters | 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:SYSTEMCurrentControlSetServicesLanmanServerParameters" SMB1 -Type DWORD -Value 0 –Force
Включить SMBv1 сервер:
Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters" 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:SYSTEMCurrentControlSetServicesLanmanServerParameters" SMB2 -Type DWORD -Value 0 -Force
Включить SMBv2 сервер
Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters" 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_MACHINESYSTEMCurrentControlSetServicesLanmanServerParameters)на через GPO.
Для отключения SMBv2 нужно в этой же ветке установить параметр SMB2=0.
Для отключения SMBv1 клиента нужно распространить такой параметр реестра:
- Key: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesmrxsmb10
- Name: Start
- Type: REG_DWORD
- Value: 4
При отключении SMB 1.0/CIFS File Sharing Support в Windows вы можете столкнуться с ошибкой “0x80070035, не найден сетевой путь”, ошибкой при доступе к общим папкам, и проблемами обнаружения компьютеров в сетевом окружении. В этом случае вместо служба обозревателя компьютеров (Computer Browser) нужно использовать службы обнаружения (линк).
Сетевой протокол Server Message Block (SMB) используется для совместного использования удаленного доступа к файлам, принтерам и другим устройствам через TCP-порт 445. В этой статье мы рассмотрим, какие версии (диалекты) SMB доступны в разных версиях Windows. (и как они соотносятся с версиями самбы в Linux); как определить версию SMB на вашем компьютере; и как включить / отключить клиентов и серверы SMBv1, SMBv2 и SMBv3.
Существует несколько версий протокола SMB (диалектов), которые постоянно появляются в новых версиях Windows:
Samba используется для реализации протокола SMB в системах Linux / Unix. В скобках мы указали, в каких версиях самбы поддерживается каждый диалект 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, Сервер 2016 | Windows 8.1, Сервер 2012 R2 |
Windows 8, Сервер 2012 |
Windows 7, Сервер 2008 R2 |
Виндоус виста, Сервер 2008 |
Windows XP, Server 2003 и более ранние версии |
Windows 10 , Windows Server 2016 |
SMB 3.1.1 | SMB 3.02 | МСП 3.0 | SMB 2.1 | МСБ 2.0 | SMB 1.0 |
Windows 8.1 , Сервер 2012 R2 |
SMB 3.02 | SMB 3.02 | МСП 3.0 | SMB 2.1 | МСБ 2.0 | SMB 1.0 |
Windows 8 , Сервер 2012 |
МСП 3.0 | МСП 3.0 | МСП 3.0 | SMB 2.1 | МСБ 2.0 | SMB 1.0 |
Windows 7, Сервер 2008 R2 |
SMB 2.1 | SMB 2.1 | SMB 2.1 | SMB 2.1 | МСБ 2.0 | SMB 1.0 |
Виндоус виста, Сервер 2008 |
МСБ 2.0 | МСБ 2.0 | МСБ 2.0 | МСБ 2.0 | МСБ 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 отображается ошибка:
Указанное сетевое имя больше не доступно
Как проверить поддерживаемые версии 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:SYSTEMCurrentControlSetServicesLanmanServerParameters | ForEach-Object {Get-ItemProperty
Сетевой протокол Server Message Block (SMB) используется для совместного использования удаленного доступа к файлам, принтерам и другим устройствам через TCP-порт 445. В этой статье мы рассмотрим, какие версии (диалекты) SMB доступны в разных версиях Windows. (и как они соотносятся с версиями самбы в Linux); как определить версию SMB на вашем компьютере; и как включить / отключить клиентов и серверы SMBv1, SMBv2 и SMBv3.
Версии протокола SMB в Windows
Существует несколько версий протокола SMB (диалектов), которые постоянно появляются в новых версиях Windows:
Samba используется для реализации протокола SMB в системах Linux / Unix. В скобках мы указали, в каких версиях самбы поддерживается каждый диалект 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, Сервер 2016 | Windows 8.1, Сервер 2012 R2 |
Windows 8, Сервер 2012 |
Windows 7, Сервер 2008 R2 |
Виндоус виста, Сервер 2008 |
Windows XP, Server 2003 и более ранние версии |
Windows 10 , Windows Server 2016 |
SMB 3.1.1 | SMB 3.02 | МСП 3.0 | SMB 2.1 | МСБ 2.0 | SMB 1.0 |
Windows 8.1 , Сервер 2012 R2 |
SMB 3.02 | SMB 3.02 | МСП 3.0 | SMB 2.1 | МСБ 2.0 | SMB 1.0 |
Windows 8 , Сервер 2012 |
МСП 3.0 | МСП 3.0 | МСП 3.0 | SMB 2.1 | МСБ 2.0 | SMB 1.0 |
Windows 7, Сервер 2008 R2 |
SMB 2.1 | SMB 2.1 | SMB 2.1 | SMB 2.1 | МСБ 2.0 | SMB 1.0 |
Виндоус виста, Сервер 2008 |
МСБ 2.0 | МСБ 2.0 | МСБ 2.0 | МСБ 2.0 | МСБ 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 отображается ошибка:
Указанное сетевое имя больше не доступно
Как проверить поддерживаемые версии 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:
sc.exe query mrxsmb10
Если этот раздел реестра не содержит параметров с именами SMB1 или SMB2, протоколы SMB1 и SMB2 включены по умолчанию.
Даже в этих версиях Windows вы можете проверить, какие диалекты SMB можно использовать в качестве клиента, с помощью команд:
sc.exe query mrxsmb20
SERVICE_NAME: mrxsmb10 TYPE: 2 FILE_SYSTEM_DRIVER STATUS: 4 RUNNING (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN) WIN32_EXIT_CODE: 0 (0x0) SERVICE_EXIT_CODE: 0 (WOx0) CHINT
STATE=4 Running
SERVICE_NAME: mrxsmb20 TYPE: 2 FILE_SYSTEM_DRIVER STATUS: 4 RUNNING (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN) WIN32_EXIT_CODE: 0 (0x0) SERVICE_EXIT_CODE: 0 (0xA) 0 CHECKINT
В обоих случаях службы работают (
Get-SMBConnection
). Это означает, что Windows может подключаться как к серверам SMBv1, так и к SMBv2.
Вывести используемые версии SMB с помощью Get-SMBConnection
Как мы уже говорили ранее, компьютеры, обменивающиеся данными по SMB, используют максимальную версию, поддерживаемую как клиентом, так и сервером. Вы можете использовать командлет PowerShell
Get-SmbConnection -ServerName servername
, чтобы определить версию SMB, используемую для доступа к удаленному компьютеру
Get-SmbConnection | ft ServerName,ShareName,Dialect,Encrypted,UserName
:
Версия SMB, используемая для подключения к удаленному серверу (ServerName), указана в столбце Dialect.
вы можете просмотреть информацию о версиях SMB, используемых для доступа к определенному серверу:
$ sudo smbstatus
Если вы хотите узнать, используется ли шифрование SMB (введенное в SMB 3.0), запустите:
Get-SmbSession | Select-Object -ExpandProperty Dialect | Sort-Object -Unique
В Linux вы можете увидеть список SMB-соединений и диалектов, используемых в самбе, с помощью команды:
Set-SmbServerConfiguration –AuditSmb1Access $true
Чтобы просмотреть на стороне сервера список версий протокола SMB, используемых клиентами, и количество клиентов, используемых конкретной версией протокола SMB, выполните команду:
Get-WinEvent -LogName Microsoft-Windows-SMBServer/Audit
В нашем примере к серверу подключено 825 клиентов с использованием SMB 2.1 (Windows 7 / Windows Server 2008 R2) и 12 клиентов SMB 3.02.
вы можете использовать PowerShell, чтобы включить управление версиями SMB, используемую для подключения:
Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol
Затем события подключения можно получить из журналов средства просмотра событий:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
Об опасности использования SMBv1
В последние годы Microsoft систематически отключает устаревший протокол SMB 1.0 из соображений безопасности. Это связано с большим количеством критических уязвимостей в этом протоколе (вспомните историю со вспышками программ-вымогателей wannacrypt и petya, которые использовали уязвимость в протоколе SMBv1). Microsoft и другие ИТ-компании настоятельно рекомендуют вам прекратить его использование.
Однако отключение SMBv1 может вызвать проблемы с доступом к общим файлам и папкам в более новых версиях Windows 10 (Windows Server 2016/2019) из устаревших клиентов (Windows XP, Server 2003), сторонних операционных систем (Mac OSX 10.8 Mountain Lion, Snow Leopard, Mavericks, старые версии Linux), различные старые устройства NAS.
Если в вашей сети не осталось устаревших устройств, поддерживающих только 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:
Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol
Отключить только сервер SMBv1:
Set-SmbServerConfiguration -EnableSMB1Protocol $true
Включите клиент и сервер SMBv1:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
Включить только сервер SMBv1:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Узнайте больше о протоколе SMBv1 в Windows 10 и Windows Server 2016/2019.
Отключите серверы SMBv2 и SMBv3:
Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters" SMB1 -Type DWORD -Value 0 –Force
Включите SMBv2 и SMBv3 Server:
Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters" SMB1 -Type DWORD -Value 1 –Force
Windows 7, Vista, Windows Server 2008 R2 / 2008:
Отключить сервер 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
Отключить клиент SMBv1:
конфигурация sc.exe lanmanworkstation зависит от = bowser / mrxsmb20 / nsi
sc.exe config mrxsmb10 start = отключено
Включите клиент SMBv1:
конфигурация sc.exe lanmanworkstation зависит от Bowser / mrxsmb10 / mrxsmb20 / nsi
sc.exe config mrxsmb10 start = auto
Отключите сервер SMBv2:
Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters" SMB2 -Type DWORD -Value 0 -Force
Включить сервер SMBv2
Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters" SMB2 -Type DWORD -Value 1 –Force
Отключите клиент SMBv2:
конфигурация sc.exe lanmanworkstation зависит от = bowser / mrxsmb10 / nsi
sc.exe config mrxsmb20 start = отключено
Включите клиент SMBv2:
конфигурация sc.exe lanmanworkstation зависит от 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, вам необходимо распространить следующий раздел реестра:
- Ключ: HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet services mrxsmb10
- Имя: Начало
- Тип: REG_DWORD
- Значение: 4
При отключении поддержки общего доступа к файлам SMB 1.0 / CIFS в Windows вы можете столкнуться с ошибкой «0x80070035, сетевой путь не найден», ошибкой доступа к общим папкам и проблемами обнаружения компьютера в непосредственной близости от сети. В этом случае вместо службы обозревателя компьютеров нужно использовать службу обнаружения (ссылки).
Источник изображения: winitpro.ru.pspath}
Если этот раздел реестра не содержит параметров с именами SMB1 или SMB2, протоколы SMB1 и SMB2 включены по умолчанию.
Даже в этих версиях Windows вы можете проверить, какие диалекты SMB можно использовать в качестве клиента, с помощью команд:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/nsi
sc.exe config mrxsmb20 start= disabled
SERVICE_NAME: mrxsmb10 TYPE: 2 FILE_SYSTEM_DRIVER STATUS: 4 RUNNING (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN) WIN32_EXIT_CODE: 0 (0x0) SERVICE_EXIT_CODE: 0 (WOx0) CHINT
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
sc.exe config mrxsmb20 start= auto
SERVICE_NAME: mrxsmb20 TYPE: 2 FILE_SYSTEM_DRIVER STATUS: 4 RUNNING (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN) WIN32_EXIT_CODE: 0 (0x0) SERVICE_EXIT_CODE: 0 (0xA) 0 CHECKINT
В обоих случаях службы работают ([*]). Это означает, что Windows может подключаться как к серверам SMBv1, так и к SMBv2.
Вывести используемые версии SMB с помощью Get-SMBConnection
Как мы уже говорили ранее, компьютеры, обменивающиеся данными по SMB, используют максимальную версию, поддерживаемую как клиентом, так и сервером. Вы можете использовать командлет PowerShell [*], чтобы определить версию SMB, используемую для доступа к удаленному компьютеру [*]:
Версия SMB, используемая для подключения к удаленному серверу (ServerName), указана в столбце Dialect.
вы можете просмотреть информацию о версиях SMB, используемых для доступа к определенному серверу:
[*]
Если вы хотите узнать, используется ли шифрование SMB (введенное в SMB 3.0), запустите:
[*]
В Linux вы можете увидеть список SMB-соединений и диалектов, используемых в самбе, с помощью команды:
[*]
Чтобы просмотреть на стороне сервера список версий протокола SMB, используемых клиентами, и количество клиентов, используемых конкретной версией протокола SMB, выполните команду:
[*]
В нашем примере к серверу подключено 825 клиентов с использованием SMB 2.1 (Windows 7 / Windows Server 2008 R2) и 12 клиентов SMB 3.02.
вы можете использовать PowerShell, чтобы включить управление версиями SMB, используемую для подключения:
[*]
Затем события подключения можно получить из журналов средства просмотра событий:
[*]
Об опасности использования SMBv1
В последние годы Microsoft систематически отключает устаревший протокол SMB 1.0 из соображений безопасности. Это связано с большим количеством критических уязвимостей в этом протоколе (вспомните историю со вспышками программ-вымогателей wannacrypt и petya, которые использовали уязвимость в протоколе SMBv1). Microsoft и другие ИТ-компании настоятельно рекомендуют вам прекратить его использование.
Однако отключение SMBv1 может вызвать проблемы с доступом к общим файлам и папкам в более новых версиях Windows 10 (Windows Server 2016/2019) из устаревших клиентов (Windows XP, Server 2003), сторонних операционных систем (Mac OSX 10.8 Mountain Lion, Snow Leopard, Mavericks, старые версии Linux), различные старые устройства NAS.
Если в вашей сети не осталось устаревших устройств, поддерживающих только 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:
[*]
Отключить только сервер SMBv1:
[*]
Включите клиент и сервер SMBv1:
[*]
Включить только сервер SMBv1:
[*]
Узнайте больше о протоколе SMBv1 в Windows 10 и Windows Server 2016/2019.
Отключите серверы SMBv2 и SMBv3:
[*]
Включите SMBv2 и SMBv3 Server:
[*]
Windows 7, Vista, Windows Server 2008 R2 / 2008:
Отключить сервер SMBv1:
[*]
Включите сервер SMBv1:
[*]
Отключить клиент SMBv1:
конфигурация sc.exe lanmanworkstation зависит от = bowser / mrxsmb20 / nsi
sc.exe config mrxsmb10 start = отключено
Включите клиент SMBv1:
конфигурация sc.exe lanmanworkstation зависит от Bowser / mrxsmb10 / mrxsmb20 / nsi
sc.exe config mrxsmb10 start = auto
Отключите сервер SMBv2:
[*]
Включить сервер SMBv2
[*]
Отключите клиент SMBv2:
конфигурация sc.exe lanmanworkstation зависит от = bowser / mrxsmb10 / nsi
sc.exe config mrxsmb20 start = отключено
Включите клиент SMBv2:
конфигурация sc.exe lanmanworkstation зависит от 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, вам необходимо распространить следующий раздел реестра:
- Ключ: HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet services mrxsmb10
- Имя: Начало
- Тип: REG_DWORD
- Значение: 4
При отключении поддержки общего доступа к файлам SMB 1.0 / CIFS в Windows вы можете столкнуться с ошибкой «0x80070035, сетевой путь не найден», ошибкой доступа к общим папкам и проблемами обнаружения компьютера в непосредственной близости от сети. В этом случае вместо службы обозревателя компьютеров нужно использовать службу обнаружения (ссылки).
Источник изображения: winitpro.ru
SMB (Server Message Block) — один из превосходных протоколов для обмена файлами в локальной сети. В 1998 году Microsoft переименовала этот протокол в CIFS (ранее известный как SMB, но был переименован в CIFS (Common Internet File System)). С тех пор он был известен как SMB / CIFS во многих местах, последние версии SMB / CIFS имеют встроенную поддержку жестких и символических ссылок, файлы большего размера, и у нас даже есть аутентификация и безопасная передача файлов с использованием криптографических протоколов. Samba — это бесплатная реализация протокола Windows SMB / CIFS, поэтому у нас будет без проблем совместимость между системами Microsoft и операционными системами Linux и Unix. Сегодня в RedesZone мы объясним, как включить или отключить различные протоколы SMBv1,
Характеристики SMB / CIFS в разных версиях
SMB — это сетевой протокол, который позволяет нам обмениваться файлами, папками и принтерами по локальной сети между различными операционными системами, включая Windows, Linux, MacOS и любую операционную систему Unix, которая включает Samba. Этот протокол находится на уровне приложений, а ниже он использует TCP-порт 445, поэтому передача данных надежна, поскольку в случае возникновения проблемы происходит повторная передача данных. С момента появления SMB / CIFS и до настоящего времени у нас есть несколько версий, которые включают улучшения в работе, а также в безопасности протокола, однако не все серверы, работающие с SMB / CIFS, используют последние версии протокола. , поэтому мы можем столкнуться с неожиданными сбоями при попытке подключиться к локальному SMB-серверу.
Доступ к ресурсам SMB / CIFS может осуществляться посредством аутентификации с помощью локальных пользователей, посредством аутентификации на основе сервера RADIUS или LDAP и, конечно же, посредством аутентификации Active Directory. На уровне конфигурации мы могли бы настроить сервер, чтобы избежать использования нулевых паролей, мы также могли бы создать гостевые учетные записи, которые разрешат доступ к определенным ресурсам без какого-либо типа аутентификации. Другие особенности SMB / CIFS заключаются в том, что мы можем включить поддержку расширенных атрибутов OS / 2 в общем ресурсе, а также сохранить эти атрибуты DOS, если мы используем операционные системы Microsoft. Конечно, мы можем установить маску для создания файлов, а также каталогов, чтобы файлы или папки, которые мы собираемся создать, имели определенные разрешения.
Что касается производительности SMB / CIFS, мы можем включить асинхронный ввод-вывод, чтобы получить лучшую скорость чтения и записи в ресурсах Samba, более того, его можно было использовать только для файлов, размер которых превышает размер, определенный в конфигурации сервера. При настройке сервера SMB / CIFS очень важна используемая версия как на сервере, так и на клиенте. На уровне конфигурации мы можем установить различные параметры, чтобы установить максимальный поддерживаемый протокол уровня сервера, а также минимальный протокол уровня сервера, чтобы обеспечить наилучшую безопасность для клиентов. Например, очень безопасная установка должна поддерживать только протокол SMB3, однако у нас могут быть проблемы с некоторыми клиентами, которые поддерживают только SMB2,
PME / CIFS версия 1
Первая версия этого протокола родилась в 1983 году и была построена с использованием Microsoft NetBIOS, однако в более поздних версиях NetBIOS больше не использовался. Все более старые версии Microsoft Windows используют протокол SMBv1, однако в более новых версиях Windows 10 и Windows Server протокол SMBv1 не установлен в операционной системе по соображениям безопасности, поскольку этот протокол не работает. не рекомендуется использовать. Например, Windows Server 2016 и более поздние версии и Windows 10 Fall Creators Update не включают эту версию по умолчанию.
Также верно, что некоторые маршрутизаторы все еще используют первую версию протокола на своих серверах SMB / CIFS, в этом случае мало или ничего нельзя сделать, чтобы настроить его с более высокими версиями, так как это зависит от производителя в подавляющем большинстве случаев. . чехол. дело. Например, если у вас есть сторонняя прошивка, такая как OpenWRT или DD-WRT, вы можете отключить этот протокол SMBv1 и включить последние версии, потому что программное обеспечение в прошивке поддерживает его.
PME / CIFS версия 2
Microsoft выпустила версию SMBv2 для Windows Vista в 2006 году и для Windows Server 2008. Хотя этот протокол является частным, вся его спецификация была выпущена, чтобы позволить программам, таким как Samba для Linux и Unix, использовать его и взаимодействовать с различными операционными системами. В противном случае только операционные системы Windows могли обмениваться информацией друг с другом.
SMB2 — это большое изменение по сравнению с первой версией как в работе, так и в безопасности. SMB2 сокращает установление соединения по сравнению с SMB1.0, уменьшая количество команд и подкоманд, кроме того, он позволяет отправлять дополнительные запросы до получения ответа на предыдущий запрос, экономя время и повышая скорость, когда у нас большие задержки в соединениях , или когда мы хотим добиться максимальной производительности. Другими очень важными опциями являются возможность объединения нескольких действий в один запрос, что сокращает объем передаваемой информации. SMB 2.0 объединяет ряд идентификаторов, чтобы избежать повторного подключения с нуля в случае кратковременного сбоя сети, таким образом нам не придется восстанавливать связь.
Эта новая версия SMB 2.0 поддерживает символические ссылки, кэширование, подписывание сообщений с помощью HMAC-SHA256 и лучшую масштабируемость для одновременного использования нескольких пользователей на одном сервере, кроме того, она также помогает увеличить количество общих ресурсов и файлов, открытых сервером. . В то время как SMBv1 использует 16-битный размер данных, а максимальный размер блока составляет 64 КБ, в SMB2 для хранения используется 32- или 64-битный формат, что означает, что в сверхбыстрых сетевых соединениях, таких как гигабитные, мультигигабитные или 10G-сети, передача файлов намного быстрее при отправке очень больших файлов.
В RedesZone мы смогли достичь скорости 1,2 Гбит / с в сети 10G с использованием SMB2, с NAS-сервером QNAP TS-1277 с хранилищем SSD, а на исходном ПК у нас также было хранилище SSD, потому что хранилище Традиционные жесткие диски не поддерживают такие высокие скорости, если мы не используем некоторый RAID из многих дисков.
Windows Vista и Windows Server 2008 и более поздние операционные системы используют SMB2 по умолчанию, однако вы все равно можете встретить SMB1 на некоторых компьютерах, поэтому вам может потребоваться включить его специально для подключения к этим более старым серверам. Наконец, SMB 2.1, представленный в Windows 7 и Windows Server 2008 R2, еще больше повысил производительность за счет нового механизма гибкой блокировки.
PME / CIFS версия 3
Эта версия SMB 3.0 ранее называлась SMB 2.2, она была представлена в Windows 8 и Windows Server 2012 с некоторыми очень важными новыми изменениями, направленными на добавление новых функций и повышение производительности SMB2 в виртуализированных центрах обработки данных. Некоторые из внесенных изменений заключались в следующем:
- SMB Direct Protocol: это позволяет использовать SMB для прямого доступа к удаленной памяти RDMA, любой сервер с этой версией включает эту функцию для значительного повышения производительности.
- Многоканальный SMB: эта функция позволяет нам устанавливать несколько подключений за сеанс SMB, максимально усиливать связь и сжимать локальную сеть, в которой мы запускаем сервер и клиентов.
- Полностью прозрачный наклон.
Однако наиболее важной функцией является аутентификация пользователя в SMB, теперь она полностью зашифрована, прежде чем она всегда будет выполняться в виде открытого текста, чтобы злоумышленник мог установить сетевой сниффер и захват учетных данных пользователя. Благодаря этому аутентификация выполняется безопасно. Возможность иметь сквозное шифрование с помощью AES также была включена для шифрования или шифрования передачи файлов и папок. Таким образом, с SMB 3.0 у нас есть две возможности конфигурации:
- Безопасная аутентификация с шифрованием и передачей файлов и папок в незашифрованном виде.
- Аутентификация и обмен файлами и папками с симметричным шифрованием, это обеспечит нам максимальную безопасность, но производительность может быть снижена.
Если сервер SMB не поддерживает AES-NI в своем процессоре, вполне вероятно, что производительность, которую мы получаем при передаче файлов и папок, действительно низкая, поэтому настоятельно рекомендуется иметь мощный процессор с механизмом аппаратного шифрования. В настоящее время все процессоры с 2015 года используют эту технологию, но вы должны учитывать это в ее технических характеристиках.
Помимо SMB версии 3.0, SMB версии 3.0.2 также был представлен в Windows 8.1 и Windows Server 2012 R2, улучшая функциональность и производительность. Кроме того, в этих операционных системах уже можно отключить SMB версии 1.0 для повышения безопасности, поскольку во время подключения клиенты могут согласовывать, какой протокол SMB использовать.
Наконец, Microsoft представила SMB версии 3.1.1 в Windows 10 и Windows Server 2016 и более поздних версиях. Эта новая версия включает симметричное шифрование AES-128-GCM для обеспечения максимальной безопасности и наилучшей производительности чтения и записи, у нас также есть возможность настроить режим шифрования CCM. В дополнение к этому, он реализует предварительную проверку целостности с использованием хэша SHA2-512, одного из самых безопасных на сегодняшний день. Наконец, эта версия SMB 3.1.1 заставляет согласовывать клиентов, использующих SMB 2.0 или выше, с безопасностью, то есть аутентификацией с шифрованием.
Включение или отключение различных протоколов SMB в Windows
В настоящее время, если мы используем последние версии операционной системы Windows, SMB версии 1.0 по умолчанию отключен в целях безопасности, поскольку это протокол, который в настоящее время не считается безопасным, необходимо, чтобы вы использовали SMB 2.0 или выше, чтобы избежать безопасности. вопросы. Однако было бы целесообразно проверить, включены ли у нас разные протоколы, чтобы знать, какие из них нам нужно включить или отключить.
Затем мы объясним вам, как обнаруживать, деактивировать или активировать различные версии Samba. Первое, что нам нужно сделать, это нажать кнопку «Windows», а затем выполнить поиск по запросу « Powershell «Делаем щелчок правой кнопкой мыши и» выполнять как администратор .
SMBv1 как клиент, так и сервер
Если мы хотим включить или отключить поддержку SMBv1 на нашем компьютере, сначала нам нужно проверить, включили ли мы ее или нет.
Обнаружить:
Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Для активации протокола SMBv1 (не рекомендуется из соображений безопасности) необходимо поставить:
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Чтобы отключить его:
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
SMBv2 / SMB3 как клиент, так и сервер
Если мы хотим включить или отключить поддержку SMBv2 или SMBv3 на нашем компьютере, сначала нам нужно проверить, включили ли мы ее или нет.
Get-SmbServerConfiguration | Select EnableSMB2Protocol
Чтобы активировать его:
Set-SmbServerConfiguration -EnableSMB2Protocol $true
Чтобы отключить его:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
Он работает как для версии SMBv2, так и для версии SMBv3, таким образом у нас не будет специальной команды для SMBv3, поскольку она уже встроена в SMBv2, но нам нужно проверить, включено ли шифрование данных, функция, уникальная в последней версии .SMBv3:
Get-SmbServerConfiguration | Select EncryptData
Если указано «False», это означает, что шифрование данных не включено, чтобы включить его, нам нужно выполнить следующую команду:
Set-SmbServerConfiguration -EncryptData $True
Необходимо убедиться, что удаленный сервер поддерживает SMBv3, иначе при попытке доступа к общим ресурсам любого сервера будет отображаться ошибка.
Содержание
- Способ 1: Активация средства через «Компоненты Windows»
- Способ 2: Использование скрипта в PowerShell
- Способ 3: Изменение параметров в «Редакторе реестра»
- Способ 4: Внесение изменений через «Управление групповой политики»
- Вопросы и ответы
Если вы решили активировать SMB1 в Windows 11, то уже должны знать, что данный компонент необходим для организации удаленного подключения к другим компьютерам. Однако отметим, что в большинстве случаев обычному пользователю не нужны такие сложные технологии, требующие многих настроек и определенных знаний. Куда проще использовать другие средства организации подключения. О таких вы можете прочитать в статье по ссылке ниже и выбрать, что из этого будет оптимальным в вашем случае. Если же включение SMB1 все же нужно, переходите к ознакомлению со следующими методами.
Читайте также: Как подключиться к удаленному компьютеру
В Windows 11, как и в предыдущих версиях операционной системы есть ряд компонентов, которые либо активны по умолчанию, либо находятся в отключенном состоянии и их включение осуществляется вручную. Это относится и к рассматриваемой технологии SMB1. Для ее активации через графическое меню ОС понадобится выполнить ряд следующих действий:
- Откройте «Пуск» и через поиск отыщите «Панель управления».
- После перехода к новому окну отыщите значок «Программы и компоненты» и кликните по нему дважды левой кнопкой мыши.
- В новом окне на панели слева нажмите «Включение или отключение компонентов Windows», чтобы перейти к другому окну с настройками.
- В нем отыщите каталог «Поддержка общего доступа к файлам SMB 1.0/CIFS», поставьте галочку возле этой папки и рядом с остальными директориями, находящимися в ней.
- Ожидайте окончания поиска требуемых файлов и появления на экране уведомления о том, что компонент успешно активирован. В этом же окне с сообщением будет кнопка, позволяющая сразу отправить компьютер на перезагрузку. Сделайте это, поскольку изменения вступают в силу только в новом сеансе.
Способ 2: Использование скрипта в PowerShell
Включение протокола возможно и без использования графического меню операционной системы. Осуществляется это путем введения соответствующих команд в «Терминале Windows». Рассмотрим два варианта взаимодействия с протоколами, а вы, отталкиваясь от собственных требований, сможете реализовать подходящий.
- Первый вариант подразумевает выполнение стандартной команды для включения SMB1. Сначала щелкните правой кнопкой мыши по меню «Пуск» и из появившегося контекстного меню выберите пункт «Терминал Windows (администратор)».
- Далее введите команду
Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol
и нажмите Enter для ее применения. - Скрипт начнет загружать необходимые файлы для включения компонента, поэтому ожидайте отображения следующих уведомлений, не закрывая текущее окно, иначе весь прогресс будет сброшен.
- В конце появится сообщение о том, что для завершения операции понадобится перезагрузить компьютер. Сделайте это, выбрав вариант ответа «Y». После перезагрузки переходите к тестированию инструментов, ради которых и осуществлялось включение SMB1.
Отметим, что после перезапуска ПК вы снова можете открыть PowerShell и использовать команду Get-WindowsFeature FS-SMB1
, которая покажет на экране информацию о том, в каком сейчас состоянии находится рассматриваемый протокол. Если в будущем понадобится отключить его, используйте похожую команду, которая выглядит как Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol
.
Теперь давайте затронем другую команду для консоли, которая подразумевает взаимодействие с файлом конфигурации SMB. Она подходит не только для включения первой версии компонента, но и для всех остальных. Для реализации этого скрипта понадобится снова запустить «Терминал Windows» от имени администратора.
- Далее введите команду
Set-SmbServerConfiguration -EnableSMB2Protocol $true
илиSet-SmbServerConfiguration -EnableSMB1Protocol $true
, если нужно включить в ОС не все версии протокола (их три), а только первую. - После нажатия по клавише Enter на экране отобразится информация о том, что файл будет модифицирован. Оставьте поле пустым или введите «Y», чтобы подтвердить и завершить операцию.
- Дождитесь отображения нового поля ввода, отправьте компьютер на перезагрузку и переходите к проверке работы протокола.
Способ 3: Изменение параметров в «Редакторе реестра»
Внести соответствующие изменения в работу компонентов Windows можно через «Редактор реестра». Понадобится отыскать и изменить всего один параметр, а в случае его отсутствия создать и задать необходимое значение. Влияния этот компонент на работу ОС не оказывает, поэтому можно предварительно не создавать резервную копию реестра — никаких необратимых изменений применено не будет.
- Вызовите утилиту «Выполнить» при помощи стандартной горячей клавиши Win + R. Введите в поле
regedit
и нажмите Enter для запуска окна «Редактора реестра». - В нем перейдите по пути
КомпьютерHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLanmanServerParameters
, вставив этот адрес в верхней строке. - Отыщите параметр с названием «SMB2» и нажмите по нему дважды левой кнопкой мыши. Он отвечает за работу как SMB1, так и SMB3.
- Если параметр отсутствует, можете создать его в формате «Параметр DWORD (32 бита)» и задать название «SMB1» или «SMB2», если хотите активировать сразу все протоколы.
- После вызова окна изменения параметра задайте для него значение «1», подтвердите изменения и отправьте компьютер на перезагрузку.
Способ 4: Внесение изменений через «Управление групповой политики»
Использование этого метода актуально только в том случае, если текущий компьютер является доменом в локальной сети и активация SMB1 нужна для организации общего и удаленного доступа между другими устройствами. В других ситуациях внесение изменений через «Управление групповой политики» ничего не даст, поэтому остановитесь на одном из предыдущих способов.
- Если же вам этот вариант подходит, для начала установите недостающий компонент Windows. Вызовите меню «Пуск» и перейдите в «Параметры».
- На панели слева выберите раздел «Приложения» и разверните категорию «Дополнительные компоненты».
- После этого обратите внимание на блок «Добавление дополнительного компонента», в котором кликните по «Посмотреть функции».
- Поставьте галочку возле компонента с названием «RSAT: средства управления групповыми политиками» и нажмите «Далее» для перехода к установке.
- В следующем окне убедитесь в правильности выбранного компонента и подтвердите начало инсталляции.
- Обязательно дождитесь конца установки, следя за прогрессом в этом же окне.
- Как только рядом с компонентом появилась надпись «Установлено», можете переходить к следующим действиям.
- Откройте «Выполнить», используя стандартное сочетание клавиш Win + R, введите
gpmc.msc
и нажмите Enter для подтверждения ввода команды. - Ожидайте загрузки элементов управления и появления окна со всеми настройками.
- Разверните раздел «Управление групповой политикой», найдите там пункт «Реестр» и откройте его для заполнения сведений.
- Используйте список ниже, чтобы правильно заполнить каждое поле. По завершении сохраните изменения и перезагрузите компьютер.
- Действие:
Создать
- Куст:
HKEY_LOCAL_MACHINE
- Путь раздела:
SYSTEMCurrentControlSetServicesLanmanServerParameters
- Имя параметра:
SMB1
- Тип параметра:
REG_DWORD
- Значение:
1
- Действие:
Обратите внимание на то, что в случае необходимости внесения изменений в протокол вы можете не удалять данную запись, а просто установить в «Значении» 0
. Это отключит работу компонента до того момента, как вы снова не отредактируете параметр.
Еще статьи по данной теме:
Помогла ли Вам статья?
Если так сложилось, что Вам часто приходится пользоваться сетью, а именно подключатся к папкам с общим доступом или настраиваете у себя сетевой принтер, то скорей всего после установки, на некоторых компьютерах, Windows 10 и последующих её обновлений, наверняка заметили, что на машинах с Windows XP, которые были подключены к “десятке”, пропало сетевое подключение.
С такой же проблемой посчастливилось столкнутся и мне, когда при попытке подключения с Windows 10 к Windows Server 2003 на экране начало появляться уведомление, что «Вы не можете подключится к общей папке так как она не безопасна», это конечно насторожило, но дальше идет объяснение, что «Эта общая папка работает по устаревшему протоколу SMB1».
Как оказалось, с выходом Windows 10, если не ошибаюсь, с версии 1709, Майкрософт отключили поддержку по умолчанию протокола SMB 1 и вместо него запустило новый SMB2, который является более защищённым и безопасным.
Но для тех, кто пока не может установить себе на все машины Windows 10, с протоколом SMB 2, в статье я покажу как можно обойти и избавится от появления ошибки с сообщение, что эта общая папка работает по старому протоколу SMB1 и без проблем подключиться к сетевой папке или принтеру даже на Windows XP.
[adsense1]
Как я говорил раннее Майкрософт, по умолчанию, отключили SMB1, но пока не удаляли его полностью со своей операционной системы, а просто перевели его, скажем так, в пассивный режим.
Соответственно для того что бы воспользоваться сетевыми возможностями нужно его просто включить обратно.
- На компьютере с Windows 10 открываем «Панель управления», воспользовавшись ярлыком на рабочем столе или прописав данное словосочетание в строке «Поиск».
- Далее, в параметре «Просмотр» ставим значение «Крупные значки», если ещё не стоит, и в появившемся наборе иконок находим «Программы и компоненты».
- Выбираем с левой стороны «Включение или отключение компонентов Windows».
- В доступном перечне компонентов находим «Поддержка общего доступа к файлам SMB 1.0» и ставим напротив данной строки отметку.
- Щелкаем на «ОК» и ждем завершения выбранного компонента.
- После сообщения, что все компоненты удачно установлены перезагружаем компьютер и можно проверять результат.
Теперь, пытаясь подключится по сети к папке с общим доступом Вы уже не должны получать сообщение, что данная папка работает по устаревшему протоколу SMB 1, а без проблем попадать на необходимый компьютер.
Кстати, хочу заметить, что при подключении в Windows XP, сетевого принтера, который локально подключен к компьютеру на Windows 10, может появляться ошибка «Данное сетевое имя более не доступно».
[adsense2]
Так вот, такое сообщение на Windows XP или Server 2003 означает, в принципе, тоже самое и решается тем же способом, а именно установкой протокола SMB 1 на компьютере с Windows 10.
Уверен, что статья окажется для Вас полезной, ну а я здесь еще оставлю полезную информации о том «Как дать общий доступ папке» или «Как подключить сетевой принтер».
Обновлено 25.11.2022
Добрый день уважаемые читатели, в прошлый раз я вам подробно рассказал, как защититься от шифровальщика, если он уже попал к вам на компьютер, сегодня же я хочу рассмотреть вопрос, как не дать ему к вам попасть из вне, мы разберем отключение smb v1 или как защититься от wannacrypt и вируса petya. Уверен, что описанный тут материал окажется для вас весьма полезным и актуальным, так как разновидностей данной заразы, будет еще очень много в будущем.
Что такое протокол SMB v1
Прежде, чем начать перекрывать кислород для вирусов шифровальщиков, я хочу вас познакомить с источником, через который они лезут и называется он протокол Server Message Block (SMB).
Server Message Block — это сетевой протокол, работающий на прикладном уровне модели OSI, для доступа к сетевым ресурсам, принтерам, папкам, для взаимодействия процессов. Наверняка многие из вас знают, такое понятие как UNC пути, вида \servershare, когда вы обращаетесь к сетевой папке или принтеру, так например, сервер печати Windows, расшаривает их.
Ранее SMB протокол работал и NetBIOS прослойкой, где использовал порты UDP 137-138 и TCP 137, 139, но это было до появления 2000-го Windows, где порт поменяли на 445, он так же применяется и для входа компьютеров в домен Active Directory. Самая первая версию данного протокола, имела название «Common Internet File System» (CIFS ), ее придумали еще в далеких 90-х, я тогда еще пешком под стол ходил. Протокол долго не развивался и приобрел вторую версию, лишь в 2006 году с выходом провальной Windows Vista. Windows 8 уже принесла нам SMB 3.0.
Каждая новая версия реализации протокола, привносила новые возможности, и это логично, необходимо было увеличивать скорость передачи данных, так как локальные сети, уже превращались в гигабитные и очень часто стали появляться твердотельные накопители. Новые версии по старинке, поддерживали предыдущие, для обратной совместимости операционных систем и устройств, это и является Ахиллесовой пятой у него, через который лезут wannacrypt и petya.
Ниже вы можете посмотреть, эволюцию протокола SMB v1 с выходом новых операционных систем.
Для чего отключать smb v1
Расскажу небольшую предысторию о появлении вирусов wannacrypt и petya. В начале 2017 года, одна хакерская команда, смогла взломать службу АНБ и похитить у нее данные, о всевозможных лазейках в компьютерных системах, благодаря которым можно получать удаленный доступ к нужному компьютеру и следить за жертвой, получая о ней все данные. Среди этих дыр безопасности, были лазейки для:
- Vmware ESXI 5 и выше
- Microsoft Windows XP и выше
- Linux системы
- Сетевое оборудование
Хакеры попытались продать все сворованное, но в итоге покупателей не нашли, не долго думая они выложили все это в сеть, тут и понеслось, другие хакеры и группы, быстро все это дело понахватали и создали свои вирусы, их очень много, но вот за май и июнь 2017 года, мир выучил названия двух, petya и wannacry (wannacrypt). Оба они используют старую уязвимость в протоколе smb v1, являющийся частью операционных систем Windos XP, вплоть до Windows 10, но у десятки все лучше, там по умолчанию работает версия SMB 3.1.1, поэтому она пока спит спокойно.
Вот посмотрите как выглядит экран блокировки после вируса petya. У пострадавшего компьютера просят 300 долларов в биткоинах, ни в коем случае не отправляйте деньги, вы ничего не получите, так как изначально данная зараза не включала в себя разблокировку.
А вот как выглядит экран после заражения wannacrypt. Как и в случае с Петей, все данные зашифрованы и уже являются цифровым мусором.
Что нужно чтобы не стать жертвой шифровальщиков
Давайте я приведу небольшой чек лист, который вам поможет сделать вашу систему более защищенной:
- Своевременно устанавливайте обновления в системе, так как это основная проблема большинства пораженных компьютеров
- Не устанавливайте не проверенный софт
- Посещайте только проверенные веб ресурсы
- Закройте лишние порты на фаэрволе
- Не открывайте электронные письма от неизвестных людей.
Как проверить можно ли заразить ваш компьютер
Как я и писал выше, жертвами становятся те компьютеры у кого работает протокол smb v1, который требует отключения. Ниже я вам предоставлю утилиту, с помощью которой вы сможете проверить удовлетворяет ли ваш или другой компьютер в сети, требованиям по безопасности.
KB обновления защищающие от wannacrypt и Petya
Вот подробный список KB для разных операционных систем Windows:
Windows XP
- https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/
Windows Vista и Windows Server 2008
- KB4012598 — 32 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012598
- KB4012598 — 64 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012598
Windows 7
- KB4012212 — 32 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012212
- KB4012215 — 32 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012215
- KB4012212 — 64 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012212
- KB4012215 — 64 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012215
Windows Server 2008 R2
- KB4012212 — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012212
- KB4012215 — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012215
Windows 8.1
- KB4012213 — 32 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012213
- KB4012216 — 32 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012216
- KB4012213 — 64 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012213
- KB4012216 — 64 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012216
Windows Server 2012 R2
- KB4012214 — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012214
- KB4012217 — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012217
- KB4012213 — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012213
- KB4012216 — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012216
Windows 10
- KB4012606 -32 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012606
- KB4012606 -64 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4012606
- Windows 10 1511 — KB4013198 — 32 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013198
- Windows 10 1511 — KB4013198 — 64 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013198
- Windows 10 1607 — KB4013429 — 32 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013429
- Windows 10 1607 — KB4013429 — 64 бита — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013429
Windows Server 2016
- KB4013429 — http://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4013429
Теперь зная нужные KB мы легко можем проверить, где не хватает обновлений и включен протокол smb v1. Ниже я вам предоставлю два метода поиска бреши.
- Утилита SecurityChecker.v2
- Power shell
Утилита SecurityChecker.v2
Данная утилита может показать, где включен smb v1 и 2.0, а так же проверить компьютер или компьютеры локальной сети на наличие нужного обновления.
В открывшейся программе, вам необходимо нажать кнопку «Add» и добавить компьютер или компьютеры, требующие проверки. Через кнопку KB вы можете подгрузить файл находящийся в корне утилиты с нужными KB для проверки, после чего нажимаете «Check». По результату проверки, вы увидите, стоит ли вам выполнить отключение smb v1 или же нет. На моем примере, вы видите, что и первая и вторая версии включены.
Проверить протокол smb v1 можно и через powershell. Открываем его от имени администратора и вводим такую команду:
get-hotfix -ComputerName имя вашего компьютера -Id нужная kb
Если у вас есть UNC соединения к вашему компьютеру, то вы можете посмотреть их версии командой
Как отключить smb v1
Я вам хочу рассказать о методах деактивирующих протокол SMB старой версии:
- Через компоненты Windows
- Через PowerShell
- Через реестр Windows
- Через групповую политику
- Оставить и установить обновления
- Через команду sc.exe config
Отключаем smb v1 через компоненты системы
Данный метод подойдет для любой не серверной версии Windows, начиная с Wista и заканчивая Windows 10.Вам необходимо открыть панель управления Windows. Нажимаете одновременно Win+R и в открывшемся окне вводите control panel, это такой универсальный метод, отработает в любой винде.
Находим пункт «Программы и компоненты»
Нажимаем «Включение и отключение компонентов Windows» именно тут, мы уберем доступ для wannacrypt и petya
Снимаем галку «Поддержка общего доступа к файлам SMB 1.0/CIFS»
Начнется удаление компонента.
Все, теперь потребуется перезагрузка.
Теперь если со старого компьютера, по типу Windpws XP вы попытаетесь попасть на UNC шару, вы увидите ошибку
Если же вам необходимо сохранить его функциональность и быть защищенным, то устанавливаем нужные KB.
Установка KB против wannacrypt и petya
Выше вы найдете список исправлений для протокола smb v1, скачиваете их из центра обновлений.Это будут файлы формата msu.
Производите установку KB.
Вот так выглядит процесс установки KB.
Вам потребуется произвести перезагрузку системы. теперь, когда все обновления у вас установлены вам не страшны вирусы wannacrypt и petya.
Отключаем smb v1 через powershell
Данный метод подойдет для серверной операционной системы Windows Server 2012 R2 и Windos 8.1, выполните вот такую команду:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
После ее выполнения smb v1 будет выключен.
Для отключения SMB версии 2 и 3 выполните:
Set-SmbServerConfiguration -EnableSMB2Protocol $false
Если захотите включить, то поменяйте $false на $true.
Теперь для Windows 7 и Windows 2008 R2, выполните следующее:
- Чтобы отключить протокол SMB версии 1 на SMB-сервере, выполните следующий командлет:
Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB1 -Type DWORD -Value 0 -Force
- Чтобы отключить протоколы SMB версии 2 и 3 на SMB-сервере, выполните следующий командлет:
Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB2 -Type DWORD -Value 0 -Force
- Чтобы включить протокол SMB версии 1 на SMB-сервере, выполните следующий командлет:
Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB1 -Type DWORD -Value 1 -Force
- Чтобы включить протоколы SMB версии 2 и 3 на SMB-сервере, выполните следующий командлет:
Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB2 -Type DWORD -Value 1 -Force
Отключаем smb v1 через реестр
Перед тем как править реестр Windows я советую вам сделать резервную копию, так на всякий случай. Открываем реестр, делается это через нажатие кнопок Win+R и ввода команды regedit.
Находим ветку:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSet ServicesLanmanServerParameters
Тут будет параметр SMB1 , по умолчанию там стоит 1, значит включено, меняем его на 0 и закрываем, после перезагрузки все будет выключено. Wannacrypt вас теперь не побеспокоит.
Если нужно отключить SMB2, то находим ветку и меняем там параметр SMB2, так же на ноль.
HKEY_LOCAL_MACHINESYSTEMCurrentControlSet ServicesLanmanServerParameters
Отключить через DISM
Откройте командную стоку от имени администратора и введите команду:
dism /online /norestart /disable-feature /featurename:SMB1Protocol
Как видите еще один метод защититься от wannacrypt.
Отключение через sc.exe config
Начиная с Windows 7 вы можете выполнить внутри системы вот такие команды через cmd запущенного от имени администратора:
- Чтобы отключить протокол SMB версии 1 на SMB-клиенте, выполните следующие команды:
sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled
- Чтобы включить протокол SMB версии 1 на SMB-клиенте, выполните следующие команды:
sc.exe config lanmanworkstation depend= bowser/mrxsmb10/mrxsmb20/nsi
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
Как защититься от wannacrypt в Active Directory
Когда речь идет о домене Active Directory, то у системного администратора сразу это ассоциируется с групповыми политиками. Давайте посмотрим как GPO поможет нам в массовом отключении smb v1. По сути групповая политика это изменение ключей реестра на клиентах. Открываем редактор и создаем новую политику, прилинковываем ее к нужному организационному подразделению и изменяем.
Политика для серверных ОС
Нас будет интересовать объект «Конфигурация компьютера — Настройка — Конфигурация Windows — Реестр», создаем элемент реестра.
- Действие: Создать
- Куст: HKEY_LOCAL_MACHINE
- Путь к разделу: SYSTEMCurrentControlSetServicesLanmanServerParameters
- Имя параметра: SMB1
- Тип значения: REG_DWORD.
- Значение: 0
Политика для клиентских ОС
Для отключения поддержки SMB v1 на клиентах понадобится изменить значение двух параметров. Сначала отключим службу протокола SMB v1:
- путь: HKLM:SYSTEMCurrentControlSetservicesmrxsmb10;
- параметр: REG_DWORD c именем Start;
- значение: 4.
Потом поправим зависимость службы LanmanWorkstation, чтоб она не зависела от SMB v1:
- путь: HKLM:SYSTEMCurrentControlSetServicesLanmanWorkstation;
- параметр: REG_MULTI_SZ с именем DependOnService;
- значение: три строки – Bowser, MRxSmb20 и NSI.
Клиентским компьютерам осталось только перезагрузиться и все будет отключено
Учтите, что выключив smb v1, вы защититесь конечно от wannacrypt и petya, но будьте осторожны, если у вас в локальной сети остались старые компьютеры, они не смогут связаться с контроллерами домена и не смогут пройти аутентификацию, так как не умеют работать по SMB 2
Содержание
- SMB: необходимо открыть порты для совместного использования файлов и принтеров
- Проблема
- Влияние
- Решение
- Открытие портов брандмауэра для включения общего доступа к файлам и принтерам
- Не открываются общие сетевые SMB папки в Windows 10
- Вы не можете получить гостевой доступ к общей папке без проверки подлинности
- Вашей системе необходимо использовать SMB2 или более позднюю
- Как обнаруживать, включать и отключать SMBv1, SMBv2 и SMBv3 в Windows
- Отключение SMB или SMBv3 для устранения неполадок
- Удаление SMBv1
- Протокол SMB: определить, включить или отключить определенную версию SMB в Windows
- Версии протокола SMB в Windows
- Как проверить поддерживаемые версии SMB в Windows?
- Вывести используемые версии SMB с помощью Get-SMBConnection
- Об опасности использования SMBv1
- Включение и отключение SMBv1, SMBv2 и SMBv3 в Windows
SMB: необходимо открыть порты для совместного использования файлов и принтеров
применимо к: Windows server 2022, Windows server 2019, Windows Server 2016, Windows Server 2012 r2 и Windows Server 2012, Windows Server 2008 r2
Этот раздел предназначен для устранения определенной проблемы, обнаруженной анализатор соответствия рекомендациям сканированием. Сведения, приведенные в этом разделе, следует применять только к компьютерам, на которых были запущены файловые службы анализатор соответствия рекомендациям и которые столкнулись с проблемой, описанной в этом разделе. Дополнительные сведения о рекомендациях и проверках см. в разделе анализатор соответствия рекомендациям.
Операционная система
Продукт или компонент
Уровень серьезности
Категория
Проблема
Порты брандмауэра, необходимые для общего доступа к файлам и принтерам, не открыты (порты 445 и 139).
Влияние
Компьютеры не смогут получить доступ к общим папкам и другим сетевым службам на основе SMB на этом сервере.
Решение
Включите общий доступ к файлам и принтерам для обмена данными через брандмауэр компьютера.
Для выполнения этой процедуры как минимум необходимо быть участником группы Администраторы (либо аналогичной).
Открытие портов брандмауэра для включения общего доступа к файлам и принтерам
откройте панель управления, щелкните система и безопасность, а затем щелкните Windows брандмауэр.
В левой области щелкните Дополнительные параметры, а затем в дереве консоли щелкните правила для входящих подключений.
В разделе правила для входящих подключений выберите файлы правил и общий доступ к принтерам (сеансы с расширением NetBIOS) и общий доступ к ФАЙЛАМ и принтерам (SMB-in).
Щелкните правой кнопкой мыши на каждом правиле и нажмите Включить правило.
Источник
Не открываются общие сетевые SMB папки в Windows 10
Если вы из Windows 10 не можете открыть сетевые папки на других сетевых устройствах (NAS, Samba сервера Linux) или на компьютерах со старыми версиями Windows (Windows 7/ XP /2003), скорее всего проблема связана с тем, что в вашей новой версии Windows 10 отключена поддержка устаревших и небезопасных версий протокола SMB (используется в Windows для доступа к общим сетевым папкам и файлам). Так, начиная с Windows 10 1709, был отключен протокол SMBv1 и анонимный (гостевой) доступ к сетевым папкам по протоколу SMBv2.
Конкретные действия, которые нужно предпринять зависят от ошибки, которая появляется в Windows 10 при доступе к общей папке и от настроек удаленного SMB сервера, на котором хранятся общие папки.
Вы не можете получить гостевой доступ к общей папке без проверки подлинности
Начиная с версии Windows 10 1709 (Fall Creators Update) Enterprise и Education пользователи стали жаловаться, что при попытке открыть сетевую папку на соседнем компьютере стала появляться ошибка:
При это на других компьютерах со старыми версиями Windows 8.1/7 или на Windows 10 с билдом до 1709, эти же сетевые каталоги открываются нормально. Эта проблем связана с тем, что в современных версиях Windows 10 (начиная с 1709) по умолчанию запрещен сетевой доступ к сетевым папкам под гостевой учетной записью по протоколу SMBv2 (и ниже). Гостевой (анонимный) доступ подразумевают доступ к сетевой папке без аутентификации. При доступе под гостевым аккаунтом по протоколу SMBv1/v2 не применяются такие методы защиты трафика, как SMB подписывание и шифрование, что делает вашу сессию уязвимой против MiTM (man-in-the-middle) атак.
При попытке открыть сетевую папку под гостем по протоколу SMB2, в журнале клиента SMB (Microsoft-Windows-SMBClient) фиксируется ошибка:
В большинстве случае с этой проблемой можно столкнуться при использовании старых версий NAS (обычно для простоты настройки на них включают гостевой доступ) или при доступе к сетевым папкам на старых версиях Windows 7/2008 R2 или Windows XP /2003 с настроенным анонимным (гостевым) доступом (см. таблицу поддерживаемых версий SMB в разных версиях Windows).
В этом случае Microsoft рекомендует изменить настройки на удаленном компьютере или NAS устройстве, который раздает сетевые папки. Желательно переключить сетевой ресурс в режим SMBv3. А если поддерживается только протокол SMBv2, настроить доступ с аутентификацией. Это самый правильный и безопасный способ исправить проблему.
В зависимости от устройства, на котором хранятся сетевые папки, вы должны отключить на них гостевой доступ.
- NAS устройство – отключите гостевой доступ в настройках вашего NAS устройства (зависит от модели);
- Samba сервер на Linux — если вы раздаете SMB каталог с Linux, в конфигурационном файле smb.conf в секции [global] нужно добавить строку: map to guest = never
А в секции с описанием сетевой папки запретить анонимный доступ: guest ok = no - В Windows вы можете включить общий доступ к сетевым папкам и принтерам с парольной защитой в разделе Control PanelAll Control Panel ItemsNetwork and Sharing CenterAdvanced sharing settings. Для All Networks (Все сети) в секции “Общий доступ с парольной защитой” (Password Protected Sharing) имените значение на “Включить общий доступ с парольной защитой” (Turn on password protected sharing). В этом случае анонимный (гостевой) доступ к папкам будет отключен и вам придется создать локальных пользователей, предоставить им доступ к сетевым папкам и принтерам и использовать эти аккаунты для подключения к общим папкам на этом компьютере.
Есть другой способ – изменить настройки вашего SMB клиента и разрешить доступ с него на сетевые папки под гостевой учетной записью.
Чтобы разрешить гостевой доступ с вашего компьютера, откройте редактор групповых политик (gpedit.msc) и перейдите в раздел: Конфигурация компьютера -> Административные шаблоны -> Сеть -> Рабочая станция Lanman (Computer Configuration ->Administrative templates -> Network (Сеть) -> Lanman Workstation). Включите политику Enable insecure guest logons (Включить небезопасные гостевые входы).
В Windows 10 Home, в которой нет редактора локальной GPO, вы можете внести аналогичное изменение через редактор реестра вручную:
Или такой командой:
reg add HKLMSYSTEMCurrentControlSetServicesLanmanWorkstationParameters /v AllowInsecureGuestAuth /t reg_dword /d 00000001 /f
Вашей системе необходимо использовать SMB2 или более позднюю
Другая возможная проблема при доступе к сетевой папке из Windows 10 – поддержка на стороне сервера только протокола SMBv1. Т.к. клиент SMBv1 по умолчанию отключен в Windows 10 1709, при попытке открыть шару вы можете получить ошибку:
При этом соседние устройства SMB могут не отображаться в сетевом окружении и при открытии по UNC пути может появляться ошибка 0x80070035.
Т.е. из сообщения об ошибке четко видно, что сетевая папка поддерживает только SMBv1 протокол доступа. В этом случае нужно попытаться перенастроить удаленное SMB устройство для поддержки как минимум SMBv2 (правильный и безопасный путь).
Если сетевые папки раздает Samba на Linux, вы можете указать минимально поддерживаемую версию SMB в файле smb.conf так:
В Windows 7/Windows Server 2008 R2 вы можете отключить SMBv1 и разрешить SMBv2 так:
Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB1 -Type DWORD -Value 0 –Force
Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB2 -Type DWORD -Value 1 –Force
В Windows 8.1 отключите SMBv1, разрешите SMBv2 и SMBv3 и проверьте что для вашего сетевого подключения используется частный или доменный профиль:
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, вы должны без проблем подключиться к сетевой папке или принтеру. Однако, нужно понимать, что использование данного обходного решения не рекомендовано, т.к. подвергает вашу систему опасности.
Источник
Как обнаруживать, включать и отключать SMBv1, SMBv2 и SMBv3 в Windows
применимо к: Windows Server 2022, Windows 10, Windows 8.1, Windows 8, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012
В этой статье описывается, как включить и отключить протокол SMB версии 1 (SMBv1), SMB версии 2 (SMB) и SMB версии 3 (SMBv3) на клиентских и серверных компонентах SMB.
Хотя отключение или удаление SMBv1 может вызвать некоторые проблемы совместимости со старыми компьютерами или программами, SMBv1 имеет существенные уязвимости, и мы настоятельно рекомендуем не использовать ее.
Отключение SMB или SMBv3 для устранения неполадок
Мы рекомендуем включить протоколы SMB 2.0 и SMBv3, но может оказаться полезным временно отключить их для устранения неполадок. Дополнительные сведения см. в статье как определить состояние, включить и отключить протоколы SMB на сервере SMB.
в Windows 10, Windows 8.1 и Windows 8 Windows Server 2019, Windows Server 2016, Windows Server 2012 R2 и Windows Server 2012, отключение SMBv3 деактивирует следующие функциональные возможности:
- Прозрачная отработка отказа — клиенты повторно подключаются без прерывания узлов кластера во время обслуживания или отработки отказа
- Scale Out одновременный доступ к общим данным на всех узлах кластеров файлов
- Многоканальное агрегирование пропускной способности сети и отказоустойчивости при наличии нескольких путей между клиентом и сервером
- SMB Direct — добавляет поддержку сети RDMA для обеспечения высокой производительности с низкой задержкой и низким использованием ЦП.
- Шифрование — обеспечивает сквозное шифрование и защищает от перехвата в ненадежных сетях.
- Аренда каталога — улучшает время отклика приложений в филиалах за счет кэширования
- Оптимизация производительности — оптимизация для небольшого случайного чтения и записи ввода-вывода
в Windows 7 и Windows Server 2008 R2 отключение 2.0 отключает следующие функции:
- Составной запрос — позволяет отправлять несколько запросов SMB в виде одного сетевого запроса.
- Большие операции чтения и записи — лучшее использование более быстрых сетей.
- Кэширование свойств папок и файлов — клиенты сохраняют локальные копии папок и файлов
- Устойчивые дескрипторы. разрешение на прозрачное повторное подключение к серверу при наличии временного отключения
- Улучшенная подпись сообщения — HMAC SHA-256 заменяет MD5 как алгоритм хеширования
- Улучшенная масштабируемость общего доступа к файлам — число пользователей, общих папок и открытых файлов на сервере значительно увеличилось.
- Поддержка символьных ссылок
- Модель нежесткой аренды клиента — ограничивает данные, передаваемые между клиентом и сервером, повышая производительность в сетях с высокой задержкой и повышая масштабируемость сервера SMB.
- Поддержка большого MTU — для полного использования 10 Gigabit Ethernet (GbE)
- Повышение эффективности энергопотребления — клиенты, которые имеют открытые файлы на сервере, могут перейти в спящий режим
протокол smb был впервые появился в Windows Vista и Windows Server 2008, а протокол SMBv3 появился в Windows 8 и Windows Server 2012. Дополнительные сведения о функциях SMB и SMBv3 см. в следующих статьях:
Удаление SMBv1
вот как можно удалить SMBv1 в Windows 10, Windows 8.1, Windows Server 2019, Windows Server 2016 и Windows 2012 R2.
Источник
Протокол SMB: определить, включить или отключить определенную версию SMB в Windows
Сетевой протокол SMB (Server Message Block) используется для предоставления совместного удаленного доступа к файлам, принтерам и другим устройствам через порт TCP 445. В этой статье мы рассмотрим: какие версии (диалекты) протокола SMB доступны в различных версиях Windows (и как они соотносятся с версиями samba в Linux); как определить версию SMB на вашем компьютере; и как включить/отключить клиент и сервер SMBv1, SMBv2 и SMBv3.
Версии протокола SMB в Windows
Есть несколько версии протокола SMB (диалектов), которые последовательно появлялись в новых версиях Windows:
- 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).
При сетевом взаимодействии по протоколу 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 появляется ошибка:
Как проверить поддерживаемые версии 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 ).
В Windows 7, Vista, Windows Server 2008 R2/2008:
Get-Item HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters | ForEach-Object
Если в данной ветке реестра нет параметров с именами SMB1 или SMB2, значить протоколы SMB1 и SMB2 по умолчанию включены.
Также в этих версиях Windows вы можете проверить, какие диалекты SMB разрешено использовать в качестве клиентов с помощью команд:
sc.exe query mrxsmb10
sc.exe query mrxsmb20
В обоих случаях службы запущены ( 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
Чтобы на стороне сервера вывести список используемых клиентами версий протокола 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:
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:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB1 -Type DWORD -Value 0 –Force
Включить SMBv1 сервер:
Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» 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:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB2 -Type DWORD -Value 0 -Force
Включить SMBv2 сервер
Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» 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
Для отключения SMBv2 нужно в этой же ветке установить параметр SMB2=0.
Для отключения SMBv1 клиента нужно распространить такой параметр реестра:
- Key: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesmrxsmb10
- Name: Start
- Type: REG_DWORD
- Value: 4
При отключении SMB 1.0/CIFS File Sharing Support в Windows вы можете столкнуться с ошибкой “0x80070035, не найден сетевой путь”, ошибкой при доступе к общим папкам, и проблемами обнаружения компьютеров в сетевом окружении. В этом случае вместо служба обозревателя компьютеров (Computer Browser) нужно использовать службы обнаружения (линк).
Источник
ПРИМЕЧАНИЕ: SMB2 по-прежнему будет включен с новой установкой PVS 7.13 (спасибо, Эндрю Вуд). SMB 1.0 (или SMB1) — используется в Windows 2000, Windows XP и Windows Server 2003 R2 больше не поддерживается, и вам следует использовать SMB2 или SMB3, который имеет много улучшений по сравнению с предшественником.
Ответ
Версия протокола | Версия клиента | Версия сервера |
---|---|---|
СМБ 1.0 | Windows XP | Windows Server 2003 |
СМБ 2.0 | Windows Vista | Windows Server 2008 |
СМБ 2.1 | Windows 7 | Windows Server 2008R2 |
СМБ 3.0 | Windows 8 | Windows Server 2012 |
Как включить SMB2?
Больше видео на YouTube
Чтобы включить SMB2 в Windows 10, вам нужно нажать клавиши Windows + S, начать вводить текст и нажать «Включить или выключить функции Windows». Вы также можете выполнить поиск по той же фразе в меню «Пуск», «Настройки». Прокрутите вниз до SMB 1.0 / CIFS File Sharing Support и установите этот верхний флажок.
Безопасна ли Windows XP в 2020 году?
Обновлено 5 марта 2020 г. Microsoft Windows XP больше не будет получать обновления безопасности после 8 апреля 2014 года. Для большинства из нас, кто все еще пользуется системой 13-летней давности, это означает, что эта ОС будет уязвима для хакеров, использующих недостатки безопасности, которые никогда не будет исправлен.
Почему не поддерживается Windows XP?
Без критических обновлений безопасности Windows XP ваш компьютер может стать уязвимым для вредоносных вирусов, шпионского ПО и другого вредоносного ПО, которое может украсть или повредить ваши бизнес-данные и информацию. Антивирусное программное обеспечение также не сможет полностью защитить вас, если сама Windows XP не будет поддерживаться.
Какую версию SMB мне следует использовать?
Версия SMB, используемая между двумя компьютерами, будет наивысшим диалектом, поддерживаемым обоими. Это означает, что если машина Windows 8 общается с машиной Windows 8 или Windows Server 2012, она будет использовать SMB 3.0. Если компьютер с Windows 10 взаимодействует с Windows Server 2008 R2, то самый высокий общий уровень — SMB 2.1.
В чем разница между SMB2 и SMB3?
Ответ: Основное отличие заключается в том, что SMB2 (а теперь и SMB3) является более безопасной формой SMB. Это необходимо для безопасного канала связи. Агент DirectControl (adclient) использует его для загрузки групповой политики и использует проверку подлинности NTLM.
SMB3 быстрее, чем SMB2?
SMB3 можно сделать немного быстрее, если отключить шифрование, но он все равно нигде не так быстр, как SMB2 + Large MTU.
Почему SMB1 плохой?
Вы не можете подключиться к общему файловому ресурсу, потому что это небезопасно. Для этого требуется устаревший протокол SMB1, который небезопасен и может подвергнуть вашу систему атаке. Ваша система требует SMB2 или выше. … Я имею в виду, что мы потенциально оставляем большую уязвимость сети широко открытой, потому что мы ежедневно используем протокол SMB1.
Насколько безопасно включать SMB1?
SMB1 небезопасен
Когда вы используете SMB1, вы теряете ключевую защиту, предлагаемую более поздними версиями протокола SMB: Целостность до аутентификации (SMB 3.1. 1+). Защищает от атак, связанных с понижением уровня безопасности.
Кто-нибудь еще пользуется Windows XP?
По данным NetMarketShare, впервые запущенная еще в 2001 году, давно не существующая операционная система Microsoft Windows XP все еще жива и популярна среди некоторых пользователей. По состоянию на прошлый месяц 1.26% всех ноутбуков и настольных компьютеров в мире все еще работали на ОС 19-летней давности.
Почему Windows XP лучше 10?
В Windows XP вы могли видеть на системном мониторе, что было запущено около 8 процессов, и они использовали менее 1% ЦП и пропускной способности диска. Для Windows 10 существует более 200 процессов, и они обычно используют 30-50% вашего процессора и дискового ввода-вывода.
Что я могу делать со старым компьютером с Windows XP?
8 вариантов использования вашего старого ПК с Windows XP
- Обновите его до Windows 7 или 8 (или Windows 10)…
- Замени это. …
- Перейдите на Linux. …
- Ваше личное облако. …
- Создайте медиа-сервер. …
- Превратите его в центр домашней безопасности. …
- Размещайте веб-сайты самостоятельно. …
- Игровой сервер.
8 апр. 2016 г.
Почему Windows XP просуществовала так долго?
Аппаратное обеспечение разработано таким образом, чтобы быть быстрым и надежным. Полвека назад компании осознали, что могут продлить цикл замены, потому что качество машин всегда улучшалось, а XP радикально не менялась.
Какой антивирус работает с Windows XP?
Официальный антивирус для Windows XP
Компания AV Comparatives успешно протестировала Avast на Windows XP. И то, что Windows XP является официальным поставщиком программного обеспечения для обеспечения безопасности потребителей, — еще одна причина, по которой более 435 миллионов пользователей доверяют Avast.
Можно ли обновить Windows XP до Windows 10?
Microsoft не предлагает прямой путь обновления с Windows XP до Windows 10 или Windows Vista, но обновление возможно — вот как это сделать. ОБНОВЛЕНО 1: Хотя Microsoft не предлагает прямой путь обновления, все же можно обновить ваш компьютер под управлением Windows XP или Windows Vista до Windows 16.