Windows server 2008 r2 версия smb

Kindly suggest that how we can check the SMB connection version on Windows 2008 r2 / Windows 7 machine
  • Remove From My Forums
  • Question

  • Kindly suggest that how we can check the SMB connection version on Windows 2008 r2 / Windows 7 machine

    • Edited by

      Monday, February 13, 2017 8:25 PM

Answers

  • Hi,

    In server 2008R2/windows 7, the SMB connection version is SMB2.1. In server 2012 and later you may use get-smbconnection to do a check. For server 2008R2 and windows 7, I’m afraid you could only change in the registry.

    You may follow the articles below.

    http://windowsitpro.com/windows-server-2012/checking-your-smb-version

    Please Note: Since the web site is not hosted by Microsoft, the link may change without notice. Microsoft does not guarantee the accuracy of this information.

    https://support.microsoft.com/en-us/help/2696547/how-to-enable-and-disable-smbv1,-smbv2,-and-smbv3-in-windows-vista,-windows-server-2008,-windows-7,-windows-server-2008-r2,-windows-8,-and-windows-server-2012

    Best Regards,

    Mary


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact
    tnmff@microsoft.com.

    • Edited by
      Mary Dong
      Tuesday, February 14, 2017 3:14 AM
    • Proposed as answer by
      Mary Dong
      Tuesday, February 28, 2017 8:57 AM
    • Marked as answer by
      Pmandyal
      Monday, May 1, 2017 9:41 PM

Сетевой протокол 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

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 по умолчанию включены.

проверить какие версии smb включены в windows

Также в этих версиях 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
:

Get-SMBConnection вывести в powershell версии smb, исопльзуемые для подключения

Версия 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

Get-SmbSession Получить количество клиентов, использующих разные версии SMB

В нашем примере имеется 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

Set-SmbServerConfiguration - powershell отключить SMBv2 и SMBv3

Windows 7, Vista, Windows Server 2008 R2/2008:

Отключить SMBv1 сервер:

Set-ItemProperty -Path "HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters" SMB1 -Type DWORD -Value 0 –Force

отключить smbv1 сервер в windows 7 через powershell

Включить 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) нужно использовать службы обнаружения (линк).

How to enable and disable SMBv1, SMBv2, and SMBv3 in Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, and Windows Server 2012

This article describes how to enable and disable Server Message Block (SMB) version 1 (SMBv1), SMB version 2 (SMBv2), and SMB version 3 (SMBv3) on the SMB client and server components.

Summary

In Windows 7 and Windows Server 2008 R2, disabling SMBv2 deactivates the following functionality:

  • Request compounding — allows for sending multiple SMB 2 requests as a single network request
  • Larger reads and writes — better use of faster networks
  • Caching of folder and file properties — clients keep local copies of folders and files
  • Durable handles — allow for connection to transparently reconnect to the server if there is a temporary disconnection
  • Improved message signing — HMAC SHA-256 replaces MD5 as hashing algorithm
  • Improved scalability for file sharing — number of users, shares, and open files per server greatly increased
  • Support for symbolic links
  • Client oplock leasing model — limits the data transferred between the client and server, improving performance on high-latency networks and increasing SMB server scalability
  • Large MTU support — for full use of 10-gigabye (GB) Ethernet
  • Improved energy efficiency — clients that have open files to a server can sleep

In Windows 8 and Windows Server 2012, disabling SMBv3 deactivates the following functionality (and also the SMBv2 functionality that is described in the previous list):

  • Transparent Failover — clients reconnect without interruption to cluster nodes during maintenance or failover
  • Scale Out – concurrent access to shared data on all file cluster nodes
  • Multichannel — aggregation of network bandwidth and fault tolerance if multiple paths are available between client and server
  • SMB Direct – adds RDMA networking support for very high performance, with low latency and low CPU utilization
  • Encryption – Provides end-to-end encryption and protects from eavesdropping on untrustworthy networks
  • Directory Leasing — Improves application response times in branch offices through caching
  • Performance Optimizations — optimizations for small random read/write I/O
More information

The SMBv2 protocol was introduced in Windows Vista and Windows Server 2008.

The SMBv3 protocol was introduced in Windows 8 and Windows Server 2012.

For more information about the capabilities of SMBv2 and SMBv3 capabilities, go to the following Microsoft TechNet websites:

Server Message Block overview

What’s New in SMB

  • How to enable or disable SMB protocols on the SMB server

    Windows 8 and Windows Server 2012

    Windows 8 and Windows Server 2012 introduce the new Set-SMBServerConfiguration Windows PowerShell cmdlet. The cmdlet enables you to enable or disable the SMBv1, SMBv2, and SMBv3 protocols on the server component.

    Notes When you enable or disable SMBv2 in Windows 8 or in Windows Server 2012, SMBv3 is also enabled or disabled. This behavior occurs because these protocols share the same stack.

    You do not have to restart the computer after you run the Set-SMBServerConfiguration cmdlet.

    • To obtain the current state of the SMB server protocol configuration, run the following cmdlet:

      Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol

    • To disable SMBv1 on the SMB server, run the following cmdlet:

      Set-SmbServerConfiguration -EnableSMB1Protocol $false

    • To disable SMBv2 and SMBv3 on the SMB server, run the following cmdlet:

      Set-SmbServerConfiguration -EnableSMB2Protocol $false

    • To enable SMBv1 on the SMB server, run the following cmdlet:

      Set-SmbServerConfiguration -EnableSMB1Protocol $true

    • To enable SMBv2 and SMBv3 on the SMB server, run the following cmdlet:

      Set-SmbServerConfiguration -EnableSMB2Protocol $true

    Windows 7, Windows Server 2008 R2, Windows Vista, and Windows Server 2008

    To enable or disable SMB protocols on an SMB Server that is runningWindows 7, Windows Server 2008 R2, Windows Vista, or Windows Server 2008, use Windows PowerShell or Registry Editor.

    Windows PowerShell 2.0 or a later version of PowerShell

    • To disable SMBv1 on the SMB server, run the following cmdlet:

      Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB1 -Type DWORD -Value 0 -Force

    • To disable SMBv2 and SMBv3 on the SMB server, run the following cmdlet:

      Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB2 -Type DWORD -Value 0 -Force

    • To enable SMBv1 on the SMB server, run the following cmdlet:

      Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB1 -Type DWORD -Value 1 -Force

    • To enable SMBv2 and SMBv3 on the SMB server, run the following cmdlet:

      Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB2 -Type DWORD -Value 1 -Force

    Note You must restart the computer after you make these changes.

    Registry Editor

    Important This article contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

    322756 How to back up and restore the registry in Windows

    To enable or disable SMBv1 on the SMB server, configure the following registry key:

    Registry subkey:

    HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLanmanServerParametersRegistry entry: SMB1
    REG_DWORD: 0 = Disabled
    REG_DWORD: 1 = Enabled
    Default: 1 = Enabled To enable or disable SMBv2 on the SMB server, configure the following registry key:

    Registry subkey:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLanmanServerParameters

    Registry entry: SMB2
    REG_DWORD: 0 = Disabled
    REG_DWORD: 1 = Enabled
    Default: 1 = Enabled

    How to enable or disable SMB protocols on the SMB client

    Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, and Windows Server 2012

    Note When you enable or disable SMBv2 in Windows 8 or in Windows Server 2012, SMBv3 is also enabled or disabled. This behavior occurs because these protocols share the same stack.

    • To disable SMBv1 on the SMB client, run the following commands:

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

    • To enable SMBv1 on the SMB client, run the following commands:

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

    • To disable SMBv2 and SMBv3 on the SMB client, run the following commands:

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

    • To enable SMBv2 and SMBv3 on the SMB client, run the following commands:

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

    Notes

    • You must run these commands at an elevated command prompt.
    • You must restart the computer after you make these changes.

Published: 21/10/16 — 08:51:30 (Amanda Higgins)

Related Articles


Running DE8 on Windows Servers, do and dont’s (SMB1,SMB2,SMB3 and OpLocks)

With the release of DataEase 8.0, 8.1, 8.2 and Windows 7, 8 , 8.1 and Windows Server 2012 R2, we are frequently asked about how new versions of DataEase work when connecting to old versions of Windows servers and old versions of DataEase connecting to new…


Other sources of Network problems

This is a little old, but it is still useful. If you have switched off SMB2 and SMB3 on your networ as well as disabled OpLocks for SMB1 and still have problems with corruption, have a look below and see if some of these things might apply to your network…


Environment Variables in Windows XP, WIndows 7 and 8 (Complete List)

Environment variables is very useful to make general code. You can include them in paths directly to access files native to an active user/workstation/profile/session etc….

  • Remove From My Forums
  • Question

  • Kindly suggest that how we can check the SMB connection version on Windows 2008 r2 / Windows 7 machine

    • Edited by

      Monday, February 13, 2017 8:25 PM

Answers

  • Hi,

    In server 2008R2/windows 7, the SMB connection version is SMB2.1. In server 2012 and later you may use get-smbconnection to do a check. For server 2008R2 and windows 7, I’m afraid you could only change in the registry.

    You may follow the articles below.

    http://windowsitpro.com/windows-server-2012/checking-your-smb-version

    Please Note: Since the web site is not hosted by Microsoft, the link may change without notice. Microsoft does not guarantee the accuracy of this information.

    https://support.microsoft.com/en-us/help/2696547/how-to-enable-and-disable-smbv1,-smbv2,-and-smbv3-in-windows-vista,-windows-server-2008,-windows-7,-windows-server-2008-r2,-windows-8,-and-windows-server-2012

    Best Regards,

    Mary


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact
    tnmff@microsoft.com.

    • Edited by
      Mary Dong
      Tuesday, February 14, 2017 3:14 AM
    • Proposed as answer by
      Mary Dong
      Tuesday, February 28, 2017 8:57 AM
    • Marked as answer by
      Pmandyal
      Monday, May 1, 2017 9:41 PM

  • Remove From My Forums
  • Question

  • Kindly suggest that how we can check the SMB connection version on Windows 2008 r2 / Windows 7 machine

    • Edited by

      Monday, February 13, 2017 8:25 PM

Answers

  • Hi,

    In server 2008R2/windows 7, the SMB connection version is SMB2.1. In server 2012 and later you may use get-smbconnection to do a check. For server 2008R2 and windows 7, I’m afraid you could only change in the registry.

    You may follow the articles below.

    http://windowsitpro.com/windows-server-2012/checking-your-smb-version

    Please Note: Since the web site is not hosted by Microsoft, the link may change without notice. Microsoft does not guarantee the accuracy of this information.

    https://support.microsoft.com/en-us/help/2696547/how-to-enable-and-disable-smbv1,-smbv2,-and-smbv3-in-windows-vista,-windows-server-2008,-windows-7,-windows-server-2008-r2,-windows-8,-and-windows-server-2012

    Best Regards,

    Mary


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact
    tnmff@microsoft.com.

    • Edited by
      Mary Dong
      Tuesday, February 14, 2017 3:14 AM
    • Proposed as answer by
      Mary Dong
      Tuesday, February 28, 2017 8:57 AM
    • Marked as answer by
      Pmandyal
      Monday, May 1, 2017 9:41 PM

I am using Windows Server 2008 R2. I want to know which version of SMB is enabled on my server.

I used the following command in PowerShell to know the smb versions installed: sc.exe qc lanmanworkstation

In its output, the DEPENDENCIES shows two versions of SMB : MRxSmb10 and MRxSmb20.

Now the confusion is out of 2 versions installed, which SMB version is enabled on my server? As windows server 2008 R2 does not support get-smbconnection command, I am unable to determine the specific version.

I also checked the registry path HKEY_LOCAL_MACHINE\SYSTEMCurrentControlSetServicesLanmanServerParameters and there is no entry about SMB version.

Can anyone please tell me how to determine which SMB version is enabled on server if SMB versions are more than one?

asked Mar 16, 2018 at 10:34

beginner's user avatar

If you don’t see HKLMSYSTEMCurrentControlSetServicesLanmanServerParameters containing key for SMB1 with REG_DWORD: 0 for disabled, then it is enabled, which adds up with the other method that indicated the lanmanworkstation having dependency for both MRxSmb10 and RxSmb20.

As described in How to detect, enable and disable SMBv1, SMBv2, and SMBv3 section for Windows Server 2008 R2, you can disable SMBv1 with

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

After that, sc.exe query lanmanworkstation should only show MRxSmb20.

answered Mar 16, 2018 at 11:11

Esa Jokinen's user avatar

Esa JokinenEsa Jokinen

44.5k2 gold badges77 silver badges128 bronze badges

echo Verification de l'etat des protocoles SMB : echo --------------------------------------- echo. for %%V in (1 2) do ( for /F %%L in ('sc qc lanmanworkstation ^| find "mrxsmb%%V0"') do ( echo - Le gestionnaire reseau depend du protocole SMB V%%V for /F %%S in ('sc query mrxsmb%%V0 ^| find /C "RUNNING"') do ( IF %%S EQU 1 ( echo OK, le service SMB V%%V est en cour d'execution, poursuite de l'execution du script ) else ( echo. echo ******************************************************************************************************** echo SMB V%%V n'est pas en cours d'execution, arret du script echo Dans une console administrateur, taper les commandes ci-dessous puis redémarrer le poste si nécessaire : echo. echo C:^> sc qc lanmanworkstation ^(pour visualiser les dependances, mrxsmb10 = SMB V1, mrxsmb20 = SMB V2^) echo C:^> sc config lanmanworkstation depend= bowser/mrxsmb20/nsi ^(Pour exclure la dependance du protocole SMB V1^) echo C:^> sc config mrxsmb10 start= disabled ^(Pour désactiver SMB V1^) echo C:^> sc config mrxsmb20 start= auto ^(Pour lancer automatiquement SMB V2^) echo C:^> net stop workstation /YES ^(Pour redémarrer le service^) echo C:^> net start workstation echo ******************************************************************************************************** goto END_SCRIPT ) ) ) )

answered Jan 23, 2022 at 15:10

DjiPih's user avatar

Сетевой протокол 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

Get-SmbServerConfiguration | выберите 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

Get-SmbServerConfiguration | выберите 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 включены по умолчанию.

проверить, какие версии smb включены в windows

Даже в этих версиях 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

:

Get-SMBConnection печатает версии smb, используемые для подключения в PowerShell

Версия 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

Get-SmbSession Получить количество клиентов, использующих разные версии SMB

В нашем примере к серверу подключено 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

Set-SmbServerConfiguration - PowerShell отключает SMBv2 и SMBv3

Windows 7, Vista, Windows Server 2008 R2 / 2008:

Отключить сервер SMBv1:

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

отключить сервер smbv1 в Windows 7 через PowerShell

Включите сервер 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 включены по умолчанию.

проверить, какие версии smb включены в windows

Даже в этих версиях 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, используемую для доступа к удаленному компьютеру [*]:

Get-SMBConnection печатает версии smb, используемые для подключения в PowerShell

Версия SMB, используемая для подключения к удаленному серверу (ServerName), указана в столбце Dialect.

вы можете просмотреть информацию о версиях SMB, используемых для доступа к определенному серверу:

[*]

Если вы хотите узнать, используется ли шифрование SMB (введенное в SMB 3.0), запустите:

[*]

В Linux вы можете увидеть список SMB-соединений и диалектов, используемых в самбе, с помощью команды:

[*]

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

[*]

Get-SmbSession Получить количество клиентов, использующих разные версии 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:
[*]

Set-SmbServerConfiguration - PowerShell отключает SMBv2 и SMBv3

Windows 7, Vista, Windows Server 2008 R2 / 2008:

Отключить сервер SMBv1:

[*]

отключить сервер smbv1 в Windows 7 через PowerShell

Включите сервер 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

Понравилась статья? Поделить с друзьями:

Вот еще несколько интересных статей:

  • Windows server 2008 r2 версия rdp
  • Windows server 2008 r2 torrent x64 rus
  • Windows server 2008 r2 версии сравнение
  • Windows server 2008 r2 test mode
  • Windows server 2008 r2 terminal server активация

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии