Исправлено: вашей системе требуется ошибка SMB2 или выше в Windows 10

image 16 Октября 2020

375

Читайте о том, что такое ошибка «SMB2» в Windows 10 и как её исправить. Как проверить версию блока сообщений сервера «SMB».

image

Введение

Современные стандарты требуют от разработчиков создания новых усовершенствованных систем и применения более продвинутых технологий. Однако не всегда новые версии отдельных системных служб могут полноценно функционировать с предыдущими версиями. Например, при попытке подключить обновленную операционную систему «Windows 10» к серверу для доступа к отдельным файлам может возникать ошибка соединения, сигнализирующая о том, что служба сетевого протокола «Windows» не может подключиться к общей папке, и для этого требуется версия «SMB2» или выше. И ошибка не устраняется повторным подключением к заданному серверу или изменением точки доступа, сервер остается недоступным.

Мы попытались обнаружить решение этой странной ошибки подключения к серверу «Windows 10». К счастью, нам удалось найти несколько быстрых решений для устранения ошибки «SMB2» на нашем компьютере с операционной системой «Windows 10», о которых далее подробно мы расскажем в нашей статье.

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

–>

В операционной системе Windows 10 поддержка сетевого протокола доступа к файлам SMB первой версии по умолчанию отключена, поэтому при попытке подключить общий ресурс использующий SMB1 (например, общие ресурсы на сервере с установленной Windows Server 2003) выдается сообщение об ошибке:

Решить проблему можно включив поддержку протокола SMB1.Для этого нужно нажать Win+R и выполнить команду optionalfeatures.

В открывшемся окне Включения и выключения компонентов Windows нужно поставить галочки в чекбоксах «Поддержка общего доступа к файлам SMB 1.0/CIFS».

После установки компонентов система запросит перезагрузку, после которой доступ к общим ресурсам по протоколу SMB1 станет доступным.

Одним из самых последних изменений в Windows 11 стало изменение поведения протокола сжатия SMB, позволяющего уменьшать размер передаваемых пользователем, администратором или приложениями файлов по сети и тем самым ускорять передачу данных. Сжатие SMB применялось в операционной системе и раньше, но при этом сжимались не все отправляемые файлы, а только те из них, которые имеют определенный размер.

При отправке файла по сети алгоритм сжимал первые 524 288 000 байт, после чего проверял, сжаты ли 104 857 600 байт в пределах диапазона 500 Мб. Если да, сжатие продолжалось, если нет — алгоритм останавливал работу. Начиная же с Windows 11 22449 сжиматься при включенной функции SMB будут все файлы без исключения. Чтобы активировать сжатие SMB в Windows 11 прямо сейчас, нужно применить твик реестра.

Откройте командой regedit редактор реестра и разверните эту ветку:

HKLMSystemCurrentControlSetServicesLanManWorkstationparameters

В правой колонке создайте новый параметр типа DWORD,

назовите его EnableCompressedTraffic и установите в качестве его значения 1.

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

Если же вы хотите, чтобы все файлы сжимались по умолчанию, создайте в том же разделе реестра DWORD-параметр CompressibilitySamplingSize и установите в качестве его значения 4294967295 в десятичной системе счисления.

Здесь же создайте еще один DWORD-параметр CompressibleThreshold со значением .

Для полного отключения сжатия SMB создаем DWORD-параметр DisableCompression со значением 1. Этот же параметр с этим же значением нужно будет также создать в ключе HKLMSystemCurrentControlSetServicesLanManServerparameters.

Более подробные сведения о сжатии SMB и его использовании можно получить на официальной странице компании docs.microsoft.com/ru-ru/windows-server/storage/file-server/smb-compression.

С такой же проблемой  посчастливилось столкнутся и мне, когда при попытке подключения с Windows 10 к Windows Server 2003 на экране начало появляться уведомление, что «Вы не можете подключится к общей папке так как она не безопасна», это конечно насторожило, но дальше идет объяснение, что «Эта общая папка работает по устаревшему протоколу SMB1».

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

Но для тех, кто пока не может установить себе на все машины Windows 10, с протоколом SMB 2, в статье я покажу как можно обойти и избавится от появления ошибки с сообщение, что эта общая папка работает по старому протоколу SMB1 и без проблем подключиться к сетевой папке или принтеру даже на Windows XP.

Включаем протокол SMB1 для сетевого доступа

[adsense1]

Как я говорил раннее Майкрософт, по умолчанию, отключили SMB1, но пока не удаляли его полностью со своей операционной системы, а просто перевели его, скажем так, в пассивный режим.

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

  1. На компьютере с Windows 10 открываем «Панель управления», воспользовавшись ярлыком на рабочем столе или прописав данное словосочетание в строке «Поиск».
  2. Далее, в параметре «Просмотр» ставим значение «Крупные значки», если ещё не стоит, и в появившемся наборе иконок находим «Программы и компоненты».
  3. Выбираем с левой стороны «Включение или отключение компонентов Windows».
  4. В доступном перечне компонентов находим «Поддержка общего доступа к файлам SMB 1.0» и ставим напротив данной строки отметку.
  5. Щелкаем на «ОК» и ждем завершения выбранного компонента.
  6. После сообщения, что все компоненты удачно установлены перезагружаем компьютер и можно проверять результат.

Теперь, пытаясь подключится по сети к папке с общим доступом Вы уже не должны получать сообщение, что данная папка работает по устаревшему протоколу SMB 1, а без проблем попадать на необходимый компьютер.

Кстати, хочу заметить, что при подключении в Windows XP, сетевого принтера, который локально подключен к компьютеру на Windows 10, может появляться ошибка «Данное сетевое имя более не доступно».

[adsense2]

Так вот, такое сообщение на Windows XP или Server 2003 означает, в принципе, тоже самое и решается тем же способом, а именно установкой протокола SMB 1 на компьютере с Windows 10.

Уверен, что статья окажется для Вас полезной, ну а я здесь еще оставлю полезную информации о том «Как дать общий доступ папке» или «Как подключить сетевой принтер».

Общая папка работает по устаревшему протоколу SMB1

Характеристики SMB / CIFS в разных версиях

SMB – это сетевой протокол, который позволяет нам обмениваться файлами, папками и принтерами в локальной сети между различными операционными системами, включая Windows, Linux, MacOS и любую операционную систему на основе Unix, которая включает Samba. Этот протокол находится на прикладном уровне, а ниже он использует TCP-порт 445, поэтому передача данных надежна, поскольку в случае проблем происходит повторная передача данных. С момента появления SMB / CIFS и до настоящего времени у нас есть несколько версий, в которых были внесены улучшения в работу, а также в безопасность протокола, однако не все серверы, работающие с SMB / CIFS, используют последние версии. протокол, поэтому мы могли столкнуться с неожиданными сбоями при попытке подключиться к локальному SMB-серверу.

Доступ к ресурсам SMB / CIFS может осуществляться посредством аутентификации с помощью локальных пользователей, с помощью аутентификации на основе RADIUS или LDAP-сервера и, конечно же, с помощью аутентификации в активном каталоге. На уровне конфигурации мы могли бы настроить сервер, чтобы избежать использования нулевых паролей, мы также могли бы создать гостевые учетные записи, которые разрешат доступ к определенным ресурсам без какого-либо типа аутентификации. Другой особенностью SMB / CIFS является то, что мы можем включить поддержку расширенных атрибутов OS / 2 в общем ресурсе, а также сохранить эти атрибуты DOS, если мы используем операционные системы Microsoft. Конечно, мы можем установить маску для создания файлов, а также каталогов, чтобы те файлы или папки, которые мы собираемся создавать, имели определенные разрешения.

Что касается производительности SMB / CIFS, мы можем включить асинхронный ввод-вывод, чтобы достичь лучшей скорости чтения и записи в ресурсах Samba, кроме того, это можно было использовать только для файлов, размер которых превышает размер, определенный в конфигурации сервер. Когда мы собираемся настроить сервер SMB / CIFS, используемая версия очень важна как на сервере, так и на клиенте. На уровне конфигурации мы можем определить различные параметры, чтобы установить максимально поддерживаемый протокол уровня сервера, а также минимальный протокол уровня сервера, чтобы обеспечить максимальную безопасность для клиентов. Например, очень безопасная конфигурация будет поддерживать только протокол SMB3, однако у нас могут возникнуть проблемы с некоторыми клиентами, которые поддерживают только SMB2,

SMB / 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 и активировать последние версии, потому что программное обеспечение, встроенное в прошивку, поддерживает его.

SMB / 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, еще больше повысил производительность за счет нового механизма гибкой блокировки.

SMB / 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 или выше, с безопасностью, то есть аутентификацией с шифрованием.

В настоящее время, если мы используем последние версии операционной системы 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, в противном случае он выдаст вам ошибку при попытке доступа к общим ресурсам любого сервера.

Оцените статью
Рейтинг автора
4,8
Материал подготовил
Егор Новиков
Наш эксперт
Написано статей
127
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий