Проблема с доступом к общей сетевой папке по SMB1 в Windows 10 (мое решение)
Вернемся конкретно к моей проблеме. Все что я описал выше, проверил и перепроверил уже по 10 раз. Пару раз сделал , но Windows 10 так и не видела другие компьютеры в сети и что самое главное – в проводнике так и не появлялась общая папка в виде флеши подключенной к роутеру. А на других устройствах в сети все определялось без проблем. В том числе мой ноутбук.
Где-то я прочитал, что можно попробовать открыть общую папку через окно «Выполнить». Нажал сочетание клавиш Win + R, ввел адрес сетевой папки //192.168.1.1 (он же адрес роутера)
.
Доступ к накопителю я не получил, но появилась интересная ошибка:
Это уже интересно. Хоть что-то.
SMB (Server Message Block) – сетевой протокол, который отвечает за общий доступ к файлам, принтерам и другим сетевым устройствам.
Начал искать. И оказывается, что в Windows 10 отказались от протокола SMB1. Из-за безопасности. А установленный на моем роутере пакет программ Samba походу работает по протоколу SMB1. Поэтому Windows 10 его не видит. Но другие компьютеры, которые так же работают на Windows 10 у меня так же не отображались на вкладке «Сеть».
Так как обновить протокол к SMB2 в настройках роутера я не мог, то решил что нужно как-то включить поддержку SMB1 в Windows 10. И как оказалось, это без проблем можно сделать. В итоге, после подключения компонента «Клиент SMB 1.0/CIFS» у меня все заработало. Система увидела общие папки на компьютерах в сети и сетевую папку настроенную на самом роутере.
Как включить SMB1 в Windows 10?
Через поиск найдите и откройте старую «Панель управления».
Переключитесь на «Мелкие значки» и откройте «Программы и компоненты».
Открываем «Включение или отключение компонентов Windows». Находим пункт «Поддержка общего доступа к файлам SMB 1.0/CIFS». Открываем его и ставим галочку возле «Клиент SMB 1.0/CIFS». Нажимаем Ok.
Если компьютер выдаст запрос на перезагрузку, то перезагрузите его. Если окна с предложением не будет, то выполните перезагрузку вручную.
После перезагрузки, на вкладке «Сеть» – «Компьютер» должны появится все доступные устройства в вашей сети.
SMB
или Server Message Block
это протокол обмена по сети, предназначенный для совместного использования файлов, принтеров и других различных устройств. Существует три версии SMB – SMBv1, SMBv2 и SMBv3. Из соображений безопасности Microsoft рекомендует отключить SMB версии 1, так как он устарел и использует технологию, которой почти 30 лет. Чтобы избежать заражения вирусами-вымогателями типа WannaCrypt нужно отключить SMB1 и установить обновления для операционной системы. Этот протокол используется Windows 2000, Windows XP, Windows Server 2003 и Windows Server 2003 R2 – поэтому сетевой файловый доступ к данным версиям ОС будет не доступен. Тоже самое относится к некоторым сетевым хранилищам, сканерам и т.п.
Отключение SMB1 из Панели управления
Пуск -> Панель управления -> Программы и компоненты -> Включение и отключение компонентов Windows
Отключаем ‘Поддержка общего доступа к файлам SMB 1.0/CIFS’
Отключение SMB1 через Powershell
Откройте консоль Powershell с правами администратора и введите следующую команду:
Set-ItemProperty -Path «HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters» SMB1 -Type DWORD -Value 0 –Force
Отключить SMB1 с помощью реестра Windows
Также можно отключить SMBv1 запустив regedit.exe
и перейдя к следующему разделу:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
Создайте в этом разделе DWORD SMB1
со значением .
Значения для включения и отключения SMB1:
- = Выключено
- 1 = Включено
После этого необходимо установить обновление MS17-010.
Обновление вышло подо все версии Windows, включая не поддерживаемые больше Windows XP и Windows Server 2003.
И в заключении хочется сказать, что, не смотря на установленный антивирус и регулярные обновления операционной системы, если Вам дороги ваши данные, необходимо в первую очередь думать о резервном копировании.
Почему и как необходимо отключить SMB1 в Windows 10/8/7
Включаем SMB 1
Существуют три версии протокола SMB. Первая версия по умолчанию была отключена разработчиками Windows 10 в целях повышения безопасности, что скорее всего и вызвало ошибку в обнаружении сетевого пути с кодом 0x80070035. Сам компонент является устаревшим и вместо него функционируют версии SMB 2 и 3. Однако этого бывает недостаточно для правильной работы системы.
Поэтому для решения данной проблемы предлагаю включить SMB 1.
Как это сделать:
- Открываем «Программы и компоненты» через «Панель управления» или используя поисковую строку в нижней части экрана.
- Перемещаемся в подраздел включения компонентов.
- В списке компонентов находим SMB 1 и активируем его, установив галочку. Щелкаем «ОК».
- Перезагружаем систему и проверяем, все ли работает.
Если данный способ не принес никакого положительного эффекта, то значит дело в другом. Продолжаем разбираться и переходим к следующему пункту.
Как временно включить протокол SMBv1 в Windows 10
Если у вас нет прямого доступа к устройству, на котором запущена служба SMB, вы можете временно включить протокол SMBv1, чтобы восстановите ваши файлы, выполнив следующие действия
- Откройте панель управления.
- Щелкните «Программы».
- Щелкните ссылку Включение или отключение компонентов Windows.
- Разверните параметр для поддержки совместного использования файлов SMB 1.0 / CIFS.
- Отметьте опцию клиента SMB 1.0 / CIFS.
- Щелкните по кнопке ОК.
- Нажмите кнопку «Перезагрузить сейчас».
Выполнив эти шаги, вы сможете видеть и повторно подключаться к сетевым устройствам, работающим по старому протоколу в вашей локальной сети, со своего компьютера с Windows 10.
Конечно, вы должны использовать эти шаги только как временное решение, чтобы найти доступ к вашим файлам, хранящимся в сети.
В идеале, если вы храните данные на диске, подключенном к маршрутизатору с NAS или возможностью обмена файлами.
Лучше всего связаться с производителем устройства для получения конкретные инструкции по обновлению устройства до версии, совместимой с SMBv2.02 или новее.
Если производитель не может предоставить обновление, вам следует подумать о приобретении сетевого устройства, которое включает поддержку наиболее безопасной версии сетевого протокола.
После переноса данных из сети или обновления программного обеспечения, поддерживающего наиболее безопасную версию протокола, рекомендуется отключить SMBv1 на вашем компьютере.
How to Enable/Disable SMBv1 on Windows 10?
As we already said, in all new builds of Windows10 (starting from 1709) support for the SMB1 protocol is disabled (guest access via the SMBv2 protocol is also disabled).
In Windows 10, you can check the status of the SMBv1 protocol components with the DISM command:
In our example, you can see that all SMBv1 features are disabled:
SMB1Protocol | Disabled SMB1Protocol-Client | Disabled SMB1Protocol-Server | Disabled SMB1Protocol-Deprecation | Disabled
In Windows 10, you can also manage SMB 1 features from the Control Panel (). Expand the SMB 1.0 /CIFS File Sharing Support option. As you can see, 3 SMBv1 components are also available here:
- SMB 1.0/CIFS Automatic Removal
- SMB 1.0/CIFS Client
- SMB 1.0/CIFS Server
You can enable SMBv1 client and server on Windows 10 from the feature management window or using the commands:
You can also enable SMBv1 server and client in Windows 10 using PowerShell:
If after enabling SMBv1 client, it is not used for more than 15 days, it is automatically disabled.
Automatic removal of SMBv1 client is a one-time operation. If the administrator manually enables SMBv1 again, it won’t be disabled automatically.
To disable SMB1 client and server support in Windows 10, run the following DISM commands:
If you disabled the SMBv1 client in Windows 10, then when you access a snared folder on a file server that only supports SMBv1 (the SMBv2 and v3 protocols are disabled or not supported), you may receive the following errors:
-
0x80070035 The network path was not found;
-
Unable to connect to file shares because it is not secure. This share requires the obsolete SMB1 protocol, which is not secure and could expose your system to attacks;
-
You can’t connect to the file share because it’s not secure. This share requires the obsolete SMB1 protocol, which is unsafe and could expose your system to attack. Your system requires SMB2 or higher.
Read more about it in the article Unable to access shared folder on Windows 10 .
Additionally, if you disable the SMBv1 client, the Computer Browser service, which is used by the legacy NetBIOS protocol to discover devices on the network, stops working on the computer. To correctly display neighboring computers on the Windows 10 network, you must configure the Feature Discovery Provider Host service (check this article).
Выбор статического IP-адреса
Первый шаг к настройке сети – это установка постоянного (статического) IP-адреса для каждого компьютера, который будет подключен к ней. В принципе, большая часть приложений и приборов работает с динамическим адресом, но гарантии стабильного коннекта не будет. Тем более выбор «статики» занимает всего пару минут.
Последовательность действий:
- Через встроенный поиск найти и открыть утилиту «Параметры».
- Выбрать пункт «Сеть и Интернет», зайти в раздел Ethernet или Wi-Fi.
- Щелкнуть на названии текущего сетевого подключения.
- Прокрутить окно вниз до раздела «Параметры IP».
- Изменить значение с «Автоматически (DHCP)» на вручную.
- Включить режим IPv4 или IPv6 в зависимости от задачи.
- Внести IP-адрес, длину префикса подсети и шлюз.
Здесь же возможно указание DNS-сервера (предпочтительного и дополнительного). После нажатия кнопки «Сохранить» рекомендуется перезагрузить компьютер. В качестве IP-адреса выбирается одно значение из диапазона 192.168.0.1-192.168.255.255. Главное, чтобы каждое устройство приобрело уникальный адрес (начиная с роутера, который часто «висит» на 192.168.0.1 или 192.168.1.1).
В поле «Длина префикса подсети» нужно ввести значение 24, а в качестве DNS-адреса служебного хоста или общедоступного сервера от Google – 8.8.8.8 и 8.8.8.4. То же указывается при выборе IPv6, хотя «устаревший» протокол IPv4 остается практически стандартом де-факто. Его гарантированно поддерживает оборудование, приобретенное даже лет 5-10 назад.
Проверяем наличие драйверов
Первым делом проверяем, что драйвера на сетевую карту установлены корректно и работают без сбоев.
Для этого:
Запускаем диспетчер устройств и входим во вкладку «Сетевые адаптеры».
Щелкаем правой мышкой по имеющемуся компоненту, обычно он имеет в своем названии «Realtek» и заходим в «Свойства».
Обращаем внимание на графу «Состояние устройства», в ней должно быть указано, что устройство работает нормально. Если это так, то переходим к следующему шагу
В противном случае следует установить актуальную версию драйвера.
Иногда помогает обновление драйверов, даже если они работают в штатном режиме.
Проверяем настройки общего доступа
Мы будем рассматривать два случая:
- Когда компьютеры не видят друг друга в локальной сети.
- Общий доступ к сетевому накопителю. Это у нас может быть флешка, или жесткий диск который подключен к роутеру, или отдельный накопитель (он же NAS).
Первый случай
Чтобы компьютеры могли видеть друг друга и отображаться в проводнике в разделе «Сеть», они должны быть подключены через один маршрутизатор. Или соединены напрямую (кабелем, или по Wi-Fi). Проще говоря, они должны находится в одной локальной сети.
Дальше, на всех компьютерах (не знаю, сколько их там у вас), желательно присвоить статус сети «Домашняя» (частная). Как это сделать в Windows 10, я писал в статье домашняя (частная) и общественная (общедоступная) сеть Windows 10. В Windows 7 достаточно зайти в «Центр управления сетями и общим доступом» и сменить там статус текущего подключения.
Если после этого по прежнему компьютер не обнаруживает другие компьютеры (или наоборот), то давайте еще проверим параметры общего доступа.
Для этого, в окне «Центр управления сетями и общим доступом» (если не знаете как открыть его в Windows 10, то смотрите эту статью) нажимаем на пункт «Изменить дополнительные параметры общего доступа».
И для текущего профиля (обычно это «Частная») выставляем параметры как на скриншоте ниже.
Делаем это на всех компьютерах в локальной сети.
Статьи по этой теме:
- Настройка локальной сети в Windows 10. Домашняя сеть через Wi-Fi роутер между Windows 10 и Windows 7
- Настройка локальной сети через Wi-Fi роутер между компьютерами на Windows 7. Открываем общий доступ к файлам и папкам
Как правило, эти советы решают все проблемы с обнаружением компьютеров в локальной сети.
Второй случай
Когда у вас проблемы с доступом к сетевому накопителю. Как в моем случае. Windows 10 не видела USB накопитель, который был подключен к роутеру ASUS. Сейчас много маршрутизаторов имеют USB-порт для подключения накопителей и других устройств, так что тема актуальная.
Нужно убедится, что в настройках роутера этот накопитель определен, и общий доступ к нему включен. Понятно, что на разных маршрутизаторах, это делается по-разному. На роутерах ASUS, например, это выглядит вот так:
Не путайте настройки общего доступа с настройками FTP. Настройки FTP-сервера на роутере в данном случае не при чем.
Ну и если другие устройства видят сетевой накопитель и имеют к нему доступ, а на каком-то конкретном компьютере доступа к нему нет, то значит проблема не на стороне роутера. Перебирайте настройки «проблемного» ПК по этой статье.
Почему SMB1 отключен по умолчанию на Windows 10: описание ненадежности устаревшего протокола
В операционной системе виндовс 10 после обновления 1709 (Service Pack 3) поддержка протокола SMB1 прекратилась по умолчанию. Он был заменен на более новые и оптимизированные клиент-серверные технологии по типу SMB 2.0. Его все еще можно включить и использовать, как это было описано в разделах выше, но делать это не рекомендуется из-за соображений безопасности.
Как в Windows 10 включить гибернацию — пошаговая инструкция
На протяжении всего процесса эксплуатации протокола SMB1 компанией «Майкрософт» было найдено множество уязвимостей, которые могли использоваться злоумышленниками для совершения сетевых хакерских атак.
К сведению! На момент создания второй версии технологии атаки на сети под управлением SMB1 стали наиболее привлекательными среди злоумышленников. К примеру, именно из-за этого пострадали сервера компании Sony Pictures Entertainmen, куда было установлено вредоносное ПО.
Типичная ошибка протокола SMB1
Таким образом, было рассказано, что делать, если Windows 10 не заходит в сетевую папку и как с этим связано подключение по безопасному порту SMB1. Чтобы подключиться к удаленному сетевому окружению и обмениваться с ним файлами, в некоторых случаях требуется активация устаревшего протокола SMB1, который по умолчанию отключен в виндовс 10.
- https://softikbox.com/eta-obshhaya-papka-rabotaet-po-ustarevshemu-protokolu-smb1-prichiny-oshibki-i-reshenie-28879.html
- https://inforkomp.com.ua/windows-xp/obshhaya-papka-rabotaet-po-ustarevshemu-protokolu-smb1.html
- https://mirinfo.ru/pk-i-noutbuki/windows-10-vklyuchit-smb1.html
</ol></h2></ol>
Enable/Disable SMB 1.0 on Windows Server 2016/2019
In Windows Server 2016 starting with build 1709 and Windows Server 2019, SMBv1 is disabled by default. To enable support for the SMBv1 client protocol in newer versions of Windows Server, you need to install the separate SMB 1.0/CIFS File Sharing Support feature.
You can install the SMBv1 feature using Server Manager, or through PowerShell.
You can check that SMBv1 is enabled with the PowerShell command:
To install the FS-SMB1 feature, run:
To uninstall the SMBv1 client feature (requires a reboot), run the command:
Another PowerShell command that also removes the SMB1Protocol feature:
In order for your server to handle SMBv1.0 client access, you need to enable SMBv1 support at the SMB file server level in addition to the FS-SMB1 component. To check if SMBv1 access is enabled for network shares on your server, run:
The line “” means that you are allowed to access shared folders on this server using the SMBv1 protocol. To disable SMBv1 server support in Windows Server, run the PowerShell command:
Now use the cmdlet to make sure SMB1 server is disabled.
To enable SMBv1 support on the server, run the command:
On Windows 7/8 and Windows Server 2008 R2/2012, in order to disable the SMB 1.0 client, you need to disable the service and the SMBv1 access driver with the commands:
Вы не можете получить гостевой доступ к общей папке без проверки подлинности
Начиная с версии Windows 10 1709 (Fall Creators Update) Enterprise и Education пользователи стали жаловаться, что при попытке открыть сетевую папку на соседнем компьютере стала появляться ошибка:
Вы не можете получить доступ к этой общей папке, так как политики безопасности вашей организации блокируют гостевой доступ без проверки подлинности. Эти политики помогают защитить ваш компьютер от небезопасных или вредоносных устройств в сети.
An error occurred while reconnecting Y: to \nas1share Microsoft Windows Network: You can’t access this shared folder because your organization’s security policies block unauthenticated guest access. These policies help protect your PC from unsafe or malicious devices on the network.
При это на других компьютерах со старыми версиями Windows 8.1/7 или на Windows 10 с билдом до 1709, эти же сетевые каталоги открываются нормально. Эта проблем связана с тем, что в современных версиях Windows 10 (начиная с 1709) по умолчанию запрещен сетевой доступ к сетевым папкам под гостевой учетной записью по протоколу SMBv2 (и ниже). Гостевой (анонимный) доступ подразумевают доступ к сетевой папке без аутентификации. При доступе под гостевым аккаунтом по протоколу SMBv1/v2 не применяются такие методы защиты трафика, как SMB подписывание и шифрование, что делает вашу сессию уязвимой против MiTM (man-in-the-middle) атак.
При попытке открыть сетевую папку под гостем по протоколу SMB2, в журнале клиента SMB (Microsoft-Windows-SMBClient) фиксируется ошибка:
Source: Microsoft-Windows-SMBClient Event ID: 31017 Rejected an insecure guest logon.
В большинстве случае с этой проблемой можно столкнуться при использовании старых версий NAS (обычно для простоты настройки на них включают гостевой доступ) или при доступе к сетевым папкам на старых версиях Windows 7/2008 R2 или Windows XP /2003 с настроенным анонимным (гостевым) доступом (см. таблицу поддерживаемых версий SMB в разных версиях Windows).
В этом случае Microsoft рекомендует изменить настройки на удаленном компьютере или NAS устройстве, который раздает сетевые папки. Желательно переключить сетевой ресурс в режим SMBv3. А если поддерживается только протокол SMBv2, настроить доступ с аутентификацией. Это самый правильный и безопасный способ исправить проблему.
В зависимости от устройства, на котором хранятся сетевые папки, вы должны отключить на них гостевой доступ.
- NAS устройство – отключите гостевой доступ в настройках вашего NAS устройства (зависит от модели);
- Samba сервер на Linux — если вы раздаете SMB каталог с Linux, в конфигурационном файле smb.conf в секции нужно добавить строку:А в секции с описанием сетевой папки запретить анонимный доступ:
- В 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, вы можете внести аналогичное изменение через редактор реестра вручную:
HKLMSYSTEMCurrentControlSetServicesLanmanWorkstationParameters “AllowInsecureGuestAuth”=dword:1
Или такой командой: