Невозможно получить доступ к общим папкам или сопоставить сетевые диски в Windows 10 и 11

Если вы не можете открыть или отобразить общие сетевые папки на NAS, сервере Samba Linux или компьютерах с устаревшими версиями Windows (Windows 7/XP/Server 2003) из Windows 10 или 11, скорее всего, проблема заключается в том, что устаревшие и небезопасные версии протокола SMB отключены в текущих сборках Windows (протокол SMB используется в Windows для доступа к общим сетевым папкам и файлам).

Microsoft систематически отключает устаревшие и небезопасные версии протокола SMB во всех последних версиях Windows. Начиная с Windows 10 1709 и Windows Server 2019 (в редакциях Datacenter и Standard), небезопасный протокол SMBv1 отключен по умолчанию, как и анонимный (гостевой) доступ к общим сетевым папкам.

Конкретные действия зависят от ошибки, появляющейся в Windows при доступе к общей папке, и от настроек удаленного SMB-сервера, на котором размещены общие сетевые ресурсы.

Невозможно получить доступ к общей папке, потому что политики безопасности блокируют неавторизованный гостевой доступ

Начиная с Windows 10 build 1709 Fall Creators Update (редакции Enterprise и Education), пользователи стали жаловаться на то, что при попытке открыть общую сетевую папку на соседнем компьютере появляется ошибка:

Restoring Network Connections
An error occurs when you try to open a network folder:
An error occurred while reconnecting Y: to \\nas1\share
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, Windows 7 или Windows 10 со сборкой до 1709 те же самые общие сетевые папки открываются нормально. Дело в том, что в современных версиях Windows 10 (сборка 1709+) гостевой доступ к общим папкам по протоколу SMBv2 отключен по умолчанию. Гостевой (анонимный) означает доступ к общей сетевой папке без проверки подлинности. При доступе к сетевой папке под гостевой учетной записью по протоколу SMBv1/v2 не используются такие методы защиты трафика, как подписание и шифрование SMB, что делает вашу сессию уязвимой для атак типа MiTM (man-in-the-middle).

В редакциях Windows 10 Home эти изменения не применяются, и доступ к сети под гостевой учетной записью работает нормально.

Если попытаться открыть общую сетевую папку по протоколу SMB v2 под учетной записью гостя, в окне просмотра событий компьютера (SMB-клиента) появится следующая ошибка:

Log Name: Microsoft-Windows-SmbClient/Security  
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 — Если вы предоставляете общий доступ к сетевой папке с помощью Samba в Linux, добавьте следующую строку в конфигурационный файл smb.conf в разделе [global]: map to guest = never
    И ограничьте анонимный доступ в разделе конфигурации общей папки: guest ok = no
  • В Windows, вы можете включить общий доступ к сетевым папкам и принтерам с защитой паролем через Панель управления -> Центр управления сетями и общим доступом -> Дополнительные параметры общего доступа. Для параметра «Все сети» в разделе «Общий доступ с защитой паролем» измените значение на «Включить общий доступ с защитой паролем».. В этом случае анонимный (гостевой) доступ к общим сетевым папкам будет отключен, и вам придется создать локальных пользователей, предоставить им разрешения на доступ к общим папкам и принтерам и использовать эти учетные записи для подключения к общим папкам на удаленном компьютере. windows 10 - включение защищенного паролем общего доступа (для отключения гостевого доступа)

Есть и другой способ — вы можете изменить настройки устройства Windows, чтобы разрешить доступ к общим сетевым папкам под учетной записью гостя. Этот способ следует использовать только в качестве временного обходного пути (!!!), поскольку доступ к папкам без проверки подлинности значительно снижает безопасность компьютера.

Чтобы разрешить гостевой доступ с компьютера, необходимо использовать редактор групповой политики (gpedit.msc). Перейдите в раздел: Конфигурация компьютера -> Административные шаблоны -> Сеть -> Рабочая станция Lanman. Найдите и включите политику Включить небезопасные гостевые входы. Этот параметр политики определяет, будет ли клиент SMB разрешать небезопасный гостевой вход на сервер SMB.

Включить политику небезопасных гостевых входов

Обновите параметры групповой политики в Windows с помощью команды:

gpupdate /force

В Windows 10 Home, в которой нет локального редактора GPO, аналогичные изменения можно внести через редактор реестра вручную:

HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters “AllowInsecureGuestAuth”=dword:1

Или с помощью следующих команд:

reg add HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters /v AllowInsecureGuestAuth /t reg_dword /d 00000001 /f
reg add HKLM\Software\Policies\Microsoft\Windows\LanmanWorkstation /v AllowInsecureGuestAuth /t reg_dword /d 00000001 /f

Невозможно подключиться к файловому ресурсу, потому что он небезопасен и требует устаревшего протокола SMB1

Еще одна возможная проблема при доступе к сетевой папке из Windows 10 заключается в том, что на стороне сервера поддерживается только версия протокола SMBv1. Поскольку клиент SMBv1 по умолчанию отключен в Windows 10 1709+, при попытке открыть общую папку или создать карту сетевого диска может возникнуть ошибка:

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.

Ошибка Windows 10: Для этого общего ресурса требуется устаревший протокол SMB1, который небезопасен и может подвергнуть вашу систему атаке. Для вашей системы требуется протокол SMB2 или выше

В этом случае соседние компьютеры могут не отображаться в локальной сети, а при открытии общей папки по UNC-пути может возникнуть ошибка 0x80070035.

Сообщение об ошибке ясно показывает, что сетевая общая папка поддерживает только протокол клиентского доступа SMBv1. В этом случае следует попробовать перенастроить удаленное SMB-устройство на использование как минимум SMBv2 (правильный и безопасный способ).

Если вы используете сервер Samba в Linux для совместного доступа к файлам, вы можете указать минимально поддерживаемую версию протокола SMB в файле smb.conf следующим образом:

[global]
server min protocol = SMB2_10
client max protocol = SMB3
client min protocol = SMB2_10
encrypt passwords = true
restrict anonymous = 2

В Windows 7/Windows Server 2008 R2 можно отключить протокол SMB 1 и включить SMBv2 через реестр с помощью следующих команд PowerShell:

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 –Force
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 –Force

В Windows 8.1/Windows Server 2012 R2 можно отключить SMBv1, разрешить SMBv2 и SMBv3 с помощью следующей команды (убедитесь, что для сетевого подключения используется частный профиль или профиль домена):

Disable-WindowsOptionalFeature -Online -FeatureName "SMB1Protocol"
Set-SmbServerConfiguration –EnableSMB2Protocol $true

Если сетевое устройство (NAS, Windows XP, Windows Server 2003) поддерживает только протокол SMB1, можно включить отдельную команду SMB1Protocol-Client функция в Windows 10/11 или Windows Server. Но это не рекомендуется!!!

Если удаленное устройство требует SMBv1 для подключения, а этот протокол отключен на вашем устройстве Windows, в средстве просмотра событий появляется ошибка:

Log Name: Microsoft-Windows-SmbClient/Security
Source: Microsoft-Windows-SMBClient
Event ID: 32000
Description:  SMB1 negotiate response received from a remote device when SMB1 cannot be negotiated by the local computer.

Запустите повышенную строку PowerShell и убедитесь, что SMB1Protocol-Client отключен (State: Disabled):

Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client

Включите клиентский протокол SMBv1 (требуется перезагрузка):

Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client

Get-WindowsOptionalFeature - получить состояние SMB1Protocol-Client

Включить/отключить дополнительные функции в Windows 10 и 11 можно также из меню optionalfeatures.exe. Разверните раздел Поддержка совместного доступа к файлам SMB 1.0/CIFS и включите клиент SMB 1.0/CIFS.

windows 11 включение клиентского протокола smb1 cifs через функции

В Windows 10 1809 и более новых версиях клиент SMBv1 автоматически удаляется, если он не использовался более 15 дней (параметр Автоматическое удаление SMB 1.0/CIFS за это отвечает компонент).

В этом примере я включил только клиент SMBv1. Не включайте функцию SMB1Protocol-Server, если ваш компьютер не используется устаревшими клиентами в качестве SMB-сервера для размещения общих папок.

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

Windows не может получить доступ к общей папке: У вас нет прав

При подключении к общей сетевой папке на удаленном компьютере может возникнуть ошибка:

Network Error
Windows cannot access \\PC12\Share
You do not have permission to access \\PC12\Share. Contact your network administrator to request access.

Windows не может получить доступ к общему ресурсу У вас нет разрешений на доступ

При возникновении этой ошибки необходимо:

  1. Убедиться, что пользователю, используемому для доступа к общей папке, предоставлены права доступа к удаленному ресурсу. Откройте свойства общей папки на сервере и убедитесь, что ваш пользователь имеет хотя бы права на чтение. Также можно проверить разрешения файлового ресурса SMB на удаленном хосте с помощью PowerShell:
    Get-SmbShareAccess -Name "tools"
    Затем проверьте разрешения папки NTFS:
    get-acl C:\tools\ |fl  powershell: проверка общей папки и разрешений ntfsПри необходимости измените разрешения в свойствах папки и/или общего ресурса;
  2. Убедитесь, что вы используете правильное имя пользователя и пароль для доступа к сетевой папке. Если имя пользователя и пароль не запрашиваются, попробуйте удалить сохраненные (кэшированные) учетные данные для удаленных ресурсов в диспетчере учетных данных Windows. Выполните команду rundll32.exe keymgr.dll, KRShowKeyMgr и удалите кэшированные учетные данные для удаленного компьютера, к которому вы пытаетесь получить доступ. удаление сохраненных учетных данных для доступа к удаленным общим папкам
    При следующем подключении к общей папке вам будет предложено ввести имя пользователя и пароль. Укажите учетные данные для доступа к общей сетевой папке на удаленном компьютере. Их можно сохранить в диспетчере учетных данных или добавить вручную.

Другие исправления: Windows не может получить доступ к общим папкам

В этом разделе приведены дополнительные способы устранения проблем с открытием сетевых папок в Windows:

  • Убедитесь, что удаленный компьютер разрешает входящие соединения с общими сетевыми папками по протоколу SMB (TCP-порт 445). Проверить доступность порта 445 на удаленном компьютере можно с помощью команды Test-NetConnection: Test-NetConnection -ComputerName HomePC212 -Port 445 powershell проверка smb 445 порт открыт для доступа к общим папкам
    Если команда возвращает TcpTestSucceeded : False, это означает, что доступ к сетевой папке на удаленном компьютере блокируется брандмауэром. Соединение может быть заблокировано антивирусом или брандмауэром (сторонним или встроенным в Windows Defender Firewall). Если вы используете Windows Defender, включите опцию Общий доступ к файлам и принтерам правило (Панель управления\Система и безопасность\Брандмауэр Windows Defender\Разрешенные приложения\Разрешить приложениям общаться через брандмауэр Windows) на хосте файлового ресурса для всех трех сетевых профилей. брандмауэр windows defender: разрешить общий доступ к файлам и принтерам
    Или создайте правило брандмауэра с помощью PowerShell: New-NetFirewallRule -DisplayName "Allow_SBM-FileSharing_In" -Direction Inbound -Protocol TCP –LocalPort 445 -Action Allow
  • Если вы не можете открыть сопоставленные сетевые диски (папки), попробуйте удалить сохраненные кэшированные учетные данные в диспетчере учетных данных Windows, удалить сопоставленные сетевые диски (с помощью команды Net Use * /delete ) и подключить их заново;
  • Попробуйте использовать IP-адрес удаленного компьютера вместо его имени для доступа к папке. Например: Win+R -> \\192.168.12.20 -> Ок.
  • Убедитесь, что компьютеры подключены к одной рабочей группе. Имя рабочей группы на компьютере можно узнать с помощью PowerShell: Get-WmiObject Win32_ComputerSystem).domain
  • Сбросьте настройки стека TCP/IP и обновите IP-адрес на компьютере:
    netsh int ip reset
    netsh winsock reset
    ipconfig /flushdns
    ipconfig /release
    ipconfig /renew

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *