Передача файлов была одной из характеристик операционных систем Windows с момента ее создания, и за это время, а также благодаря появившимся новым обновлениям мы увидели, как были определены новые параметры для выполнения этой задачи от протокола SMB к группе в дом
Именно протокол SMB был одним из наиболее используемых и практичных для выполнения этого действия из-за его функциональных возможностей, но с переходом на новые технологии эти протоколы были обновлены, и были обнаружены определенные недостатки безопасности, которые могут подвергнуть риску целостность и информация, размещенная в системе.
Протокол SMB (Server Message Block) существует уже более 20 лет, начиная с его версии SMB1, но в настоящее время у нас есть версия SMB3 с улучшенными функциями безопасности и надежности.
SMB - это сетевой протокол обмена файлами, также называемый протоколом SMB от Microsoft. Этот протокол состоит из набора пакетов сообщений, задача которых состоит в том, чтобы определить конкретную версию протокола, имя которого является диалектом, общий системный протокол Интернет-файлы (CIFS) - это диалект SMB.
черты
Основной целью SMB является обмен файлами, но у нас есть некоторые дополнительные функции, такие как:
- Диалектные переговоры
- Печать в локальной сети
- Определение других серверов протокола Microsoft SMB в сети или сканирование сети
- Расширенная обработка атрибутов файла
- Проверка подлинности файла, каталога и общего доступа в нескольких элементах
- Файл и журнал блокировки
- Уведомление об изменении файла и каталога
- Поддержка юникода
В традиционной сетевой модели OSI протокол SMB используется в качестве прикладного уровня или протокола уровня представления и основан на протоколах более низкого уровня для передачи пакетов в сети. Протокол Microsoft SMB был разработан как реализация клиент-сервер и состоит из набора пакетов данных, каждый из которых содержит запрос, отправленный клиентом, или ответ, отправленный сервером.
Типы пакетов
Эти пакеты делятся на следующие категории:
- Пакеты управления сеансом: это устанавливает и прекращает соединение с общими папками сервера.
- Пакеты доступа к файлам: отвечает за доступ и управление файлами и каталогами на удаленном сервере.
- Общие пакеты сообщений: этот пакет отправляет данные в очереди печати, списки рассылки и предоставляет данные о состоянии очередей печати.
Начиная с Windows 10 Fall Creators Update и Windows Server версии 1709 (RS3), сетевой протокол Server Message Block версии 1 (SMBv1) больше не будет установлен по умолчанию, поскольку его заменили SMBv2 и другими последующими протоколами. Начиная с 2007 года, идеально знать, что Microsoft публично объявила протокол SMBv1 устаревшим в 2014 году по разным причинам.
SMB1 Особенности
Некоторые функции SMB1 в Windows 10 следующие:
- SMBv1 имеет другие интересные особенности, которые нужно знать, чтобы воспользоваться преимуществами клиента и сервера. Имейте в виду, что они могут быть установлены отдельно в зависимости от потребностей каждого.
- В выпусках Windows 10 Home и Windows 10 Professional больше нет SMBv1 для клиента или сервера по умолчанию после чистой установки.
- Еще одна деталь, о которой следует помнить, это то, что если у вас есть SMBv1 на клиенте и он не используется в течение 15 дней (кроме случаев, когда компьютер выключен), он будет удален автоматически. Важно знать это, чтобы мы не остались в этом.
- Прямые обновления и версии Windows 10 Home и Windows 10 Professional для Windows Insider не удаляют протокол SMB1 автоматически с самого начала.
- Функции SMB версии 2.02, 2.1, 3.0, 3.02 и 3.1.1 совместимы.
Возможные сообщения об ошибках
Отныне при попытке доступа с устройства по протоколу SMB1 мы получим одно из следующих сообщений об ошибке:
- Невозможно подключиться к общим папкам, потому что это небезопасно. Для этого общего ресурса требуется устаревший протокол SMB1, который небезопасен и может подвергнуть вашу систему атакам.
- Ваша система требует SMB2 или выше. Для получения дополнительной информации о том, как решить эту проблему, мы перейдем по следующей ссылке:
Microsoft
- Указанное имя сети больше не доступно.
- Неуказанная ошибка 0x80004005
- Системная ошибка 64
- Указанный сервер не может выполнить запрошенную операцию.
- Ошибка 58
Как мы видим, Microsoft решила переместить SMB1 и установить SMB2 или SMB3 в Windows 10 для повышения производительности.
Протокол SMBv2 впервые был включен в Windows Vista и Windows Server 2008, тогда как протокол SMBv3 впервые был включен в Windows 8 и Windows Server 2012.
SMB2 Особенности
При использовании протокола SMB2 у нас будут такие функции, как:
- Более широкие чтения и записи, которые позволяют лучше использовать более быстрые сети, даже с высокой задержкой данных.
- Запрос на капитализацию, который позволяет отправлять несколько запросов SMB 2 как один сетевой запрос.
- Общие улучшения направлены на лучшее использование сети.
- Кэширование свойств папок и файлов, где клиенты хранят локальные копии папок и файлов для гораздо более быстрого доступа к ним.
- Поддержка символических ссылок
- Подписание сообщения было улучшено благодаря лучшей конфигурации и совместимости (HMAC SHA-256 заменяет MD5 в качестве алгоритма хэширования).
- Улучшенная масштабируемость для обмена файлами
- Оплок клиентская модель аренды
- Расширенная поддержка MTU
- Повышенная энергоэффективность для клиентских компьютеров
- Поддержка предыдущих версий SMB
Теперь один момент, который Solvetic хотел бы уточнить, заключается в том, что в настоящее время некоторые более ранние версии Windows и многие другие приложения, работающие на Android и Linux, не совместимы с последними версиями SMB (2 и 3), поэтому будет невозможно подключить Оборудование Windows для таких устройств, если включены только самые последние версии SMB, в этом случае мы должны временно активировать протокол SMB1, чтобы разрешить передачу файлов, и теперь мы увидим, как его активировать и как его деактивировать, опережая некоторые практические способы.,
1. Активируйте протокол SMB1 с помощью функций Windows 10.
Шаг 1
Чтобы использовать этот метод, мы пойдем на следующий маршрут. Там мы нажимаем на строку «Активировать или деактивировать функции Windows».
- Панель управления
- программы
- Программы и функции
Шаг 2
Другой более прямой способ доступа - использовать следующие ключи и запустить следующую строку:
+ R
OptionalFeatures.exe
Шаг 3
Мы увидим следующее окно, где перейдем в раздел «Совместимость с протоколом для совместного использования файлов SMB 1.0 / CIFS»:
Шаг 4
Там мы активируем «SMB 1.0 / CIFS Client» и, при желании, «SMB 1.0 / CIFS Server». Нажмите «Принять», и процесс активации начнется:
Шаг 5
После завершения мы увидим следующее. Нажмите «Закрыть», чтобы выйти из мастера, и таким образом мы активировали SMB1, используя функции Windows 10.
2. Отключите протокол SMB1, используя функции Windows 10
Шаг 1
Для этого процесса мы вернемся к следующему маршруту.
- Панель управления
- программы
- Программы и функции
Шаг 2
Там мы нажимаем «Активировать или деактивировать функции Windows» и теперь снимаем флажки «SMB Client 1.0 / CIFS и SMB Server 1.0 / CIFS» (если он был включен):
Шаг 3
Нажмите OK, чтобы применить изменения, и, наконец, мы увидим следующее:
Шаг 4
Нажмите кнопку «Перезагрузить сейчас», чтобы все изменения были применены к Windows 10. Помните, что активация SMB1 должна быть временной по причинам совместимости.
3. Активируйте протокол SMB1 с помощью Windows PowerShell Windows 10.
Windows PowerShell - это идеальный вариант для проверки, включения или отключения этих протоколов SMB безопасным и полнофункциональным способом. Для этого мы должны выполнить все эти действия как администраторы Windows PowerShell.$config[ads_text5] not found
Обнаружение протокола SMB1 с помощью PowerShell
Для выполнения этой задачи мы выполним следующее:
Get-WindowsOptionalFeature -Online -FeatureName SMB1ProtocolРезультат будет следующим. Существует название функции, ее описание, требует ли она перезагрузки и многое другое.
Включить SMB1 с помощью PowerShell
Чтобы выполнить процесс включения SMB1 в Windows 10 с помощью этого метода, мы запустим следующий командлет:
Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol$config[ads_text6] not found
После завершения этого процесса будет отображено следующее. Там мы вводим букву Y, чтобы перезапустить операционную систему и применить изменения.
4. Отключите протокол SMB1 с помощью Windows PowerShell Windows 10
Шаг 1
Теперь, когда нет необходимости использовать больше SB1, мы продолжаем отключать его в PowerShell, выполняя следующее:
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol$config[ads_text5] not found
Шаг 2
Нажмите Enter, и процесс отключения начнется:
Шаг 3
После завершения необходимо будет перезагрузить систему, чтобы завершить задачу. Таким образом, мы управляли SMB1 с помощью Windows PowerShell.
5. Активируйте протокол SMB2 с помощью Windows PowerShell Windows 10.
Теперь мы снова будем использовать консоль PowerShell для управления протоколом SMB2 в Windows 10.$config[ads_text6] not found
Обнаружение протокола SMB2 с помощью PowerShell
Для выполнения этого действия мы выполним следующий командлет. Мы видим, что результат действителен.
Get-SmbServerConfiguration | Выберите EnableSMB2Protocol
Включить SMB2 с помощью PowerShell
Чтобы включить протокол SMB2 в Windows 10, мы выполним следующее:
Set-SmbServerConfiguration –EnableSMB2Protocol $ trueТам мы вводим букву S и нажимаем Enter, чтобы завершить действие.$config[ads_text5] not found
Отключить SMB2 с помощью PowerShell
Если по какой-то причине мы хотим отключить этот протокол SMB2, просто запустите следующий командлет:
Set-SmbServerConfiguration –EnableSMB2Protocol $ falseМы также вводим букву S для подтверждения и нажимаем Enter. Мы видим, что SMB состоит из двух элементов: «Клиент» и «Сервер». В этом руководстве мы основываемся на клиенте, который идеально подходит для передачи файлов, но Solvetic в своей идее предоставления наилучшей информации объяснит некоторые способы управления SMB. на уровне сервера, который используется в Windows 10 и Windows Server.
Обнаружение SMB1-сервера с помощью PowerShell
Чтобы обнаружить сервер SMB1 с помощью PowerShell, мы выполним следующее:
Get-Item HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters | ForEach-Object {Get-ItemProperty $ _. Pspath}
Чтобы включить сервер SMB1, мы выполним следующее:
Set-ItemProperty -Path "HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters" SMB1 -Тип DWORD -Значение 1 –Force$config[ads_text5] not found
Чтобы отключить сервер SMB1, мы запустим следующий командлет:
Set-ItemProperty -Path "HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters" SMB1 -Тип DWORD -Значение 0 - Принудительно
Обнаружение сервера SMB2 или SMB3 с помощью PowerShell
Чтобы обнаружить SMB2 или SMB3 на сервере, мы выполним следующее:
Get-ItemProperty HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters | ForEach-Object {Get-ItemProperty $ _. Pspath}
Чтобы включить его, мы выполняем:
Set-ItemProperty -Path "HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters" SMB2 -Тип DWORD -Значение 1 –ForceЧтобы отключить его мы выполним. Рекомендуется перезагрузить систему, чтобы изменения вступили в силу.
Set-ItemProperty -Path "HKLM: \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters" SMB2 -Тип DWORD -Значение 0 - Принудительно
6. Включите или отключите SMB1 и SMB2 с помощью редактора реестра Windows 10
Другой альтернативой для включения или отключения протоколов SMB1 и SMB2 в Windows 10 и Windows Server является использование редактора реестра, но рекомендуется создать резервную копию, прежде чем вносить какие-либо изменения в редактор.
Шаг 1
Для доступа мы будем использовать следующую комбинацию клавиш и выполнить команду regedit, нажать клавишу ввода и в появившемся окне мы пойдем по следующему маршруту:
+ R
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters$config[ads_text5] not found
Шаг 2
Там мы находим значения SMB1 и SMB2, которые мы можем редактировать, дважды щелкнув по ним и назначив следующее, как требуется, в поле «Информация о значении»:
REG_DWORD: 0 = отключено REG_DWORD: 1 = включено
7. Включите или отключите SMB1 и SMB2 с помощью командной строки Windows 10
CMD или командная строка также становятся неотъемлемым решением для управления протоколом SMB в Windows.
$config[ads_text6] not foundШаг 1
В случае SMB1 мы можем выполнить следующее в командной строке от имени администратора:
Обнаружить SMB1
sc.exe запрос lanmanworkstation$config[ads_text5] not found
Отключить SMB1
Конфигурация sc.exe lanmanworkstation зависимость = bowser / mrxsmb20 / nsi Конфигурация sc.exe mrxsmb10 start = отключено
Включить SMB1
Конфигурация sc.exe lanmanworkstation зависимость = bowser / mrxsmb10 / mrxsmb20 / nsi Конфигурация sc.exe mrxsmb10 start = auto
Шаг 2
В случае SMB2 мы будем использовать следующее:
Обнаружить SMB2
sc.exe запрос lanmanworkstation
Включить SMB2
Конфигурация sc.exe lanmanworkstation зависимость = bowser / mrxsmb10 / mrxsmb20 / nsi Конфигурация sc.exe mrxsmb20 start = auto
Отключить SMB2
Конфигурация sc.exe lanmanworkstation зависимость = bowser / mrxsmb10 / nsi Конфигурация sc.exe mrxsmb20 start = отключено$config[ads_text5] not found
Мы протестировали различные методы для полного управления протоколом SMB, помня, что SMB1 устарел по указанным причинам.
СТАТЬИ