В этой статье, мы покажем, как разрешить анонимный доступ к общем сетевым папкам и принтерам на компьютере в рабочей группе или в домене Active Directory. Анонимный доступ к сетевой папке подразумевают, что для доступа к сетевому ресурсу пользователи не нужно выполнять аутентификацию (вводить пароль) и для доступа используется гостевой аккаунт.
По умолчанию при доступе к сетевой папке на удаленном компьютере появляется запрос имени пользователя и пароля (кроме случаев, когда оба компьютера находятся в одном домене, или в одной рабочей группе и на них используются одинаковые аккаунты пользователей с одинаковыми паролями). Анонимный доступ подразумевает, что при подключи к удаленному компьютеру не запрашивается пароль и доступ к общим ресурсам возможет без авторизации.
Настройка локальных политик анонимного доступа в Windows
Для анонимного доступа в Windows используется специальная встроенная учетная запись Гость ( guest ), которая отключена по-умолчанию.
Чтобы разрешить анонимный (без аутентификации) доступ к компьютеру, нужно включить учетную запись Guest и изменить некоторые параметры локальной политики безопасности Windows.
Откройте консоль редактора локальной GPO (gpedit.msc) и перейдите в раздел Конфигурация компьютера -> Конфигурация Windows -> Параметры безопасности -> Локальные политики -> Параметры безопасности (Computer Configuration -> Windows Settings -> Security Settings -> Local Policies -> Security Options)
Настройте следующие политики:
- Учетные записи: Состояние учётной записи ‘Гость’ (Accounts: Guest Account Status): Включен (Enabled);
- Сетевой доступ: разрешить применение разрешений “Для всех” к анонимным пользователям (Network access: Let Everyone permissions apply to anonymous users): Включен (Enabled);
- Сетевой доступ: Не разрешать перечисление учетных записей SAM и общих ресурсов (Network access: Do not allow anonymous enumeration of SAM accounts and shares): Отключен (Disabled).
В целях безопасности желательно также открыть политику “ Запретить локальный вход ” (Deny log on locally) в разделе Локальные политики -> Назначение прав пользователя и убедиться, что в политике указана учетная запись “Гость”.
Затем проверьте, что в этом же разделе в политике “ Доступ к компьютеру из сети ” (Access this computer from network) присутствует запись Гость или Everyone, а в политике “ Отказать в доступе к этому компьютеру из сети ” ( Deny access to this computer from the network) учетка Гость не должна быть указана.
Также убедитесь, что включен общий доступ к сетевым папкам в разделе Параметры -> Сеть и Интернет -> Ваше_сетевое_подключение (Ethernet или Wi-Fi) -> Изменение расширенных параметров общего доступа (Settings -> Network & Internet -> Ethernet -> Change advanced sharing options). Проверьте что во всех секциях (Private, Public, All networks) включены опциы Turn on file and printer sharing , сетевое обнаружение (см. статью о проблемах обнаружения компьютеров в рабочих группах ) и отключите защиту папок паролем Turn off password protected sharing.
В Windows 11 эти опции находятся в разделе панели Settings -> Network and Internet -> Advanced network settings -> Advanced sharing settings.
Обновите настройки локальных групповых политик на компьютере командой:
gpupdate /force
Разрешить гостевой доступ к общей сетевой папке Windows
После того, как вы настроили политики гостевого доступа, нужно разрешить анонимный доступа к целевой сетевой папке на хосте Windows. Вам нужно изменить настройки безопасности сетевой папки Windows, к которой вы хотите предоставить общий анонимный доступ. Откройте свойства папки, перейдите на вкладку Безопасность (здесь настраиваются NTFS разрешений) предоставьте права чтения (и, если нужно, изменения) для локальной группы « Все » («Everyone»). Для этого нажмите кнопку Изменить -> Добавить -> Все и выберите необходимые привилегии анонимных пользователей. Я предоставил доступ только на чтение.
Также на вкладке Доступ (Sharing) нужно предоставить права доступа к сетевой шаре анонимным пользователям (Доступ -> Расширенная настройка -> Разрешения). Проверьте, что у группы Все есть право на Изменение и Чтение .
Теперь в локальной политике безопасности нужно указать имя сетевой папки, к которой разрешен анонимный доступ. Откройте консоль Local Security Policy (secpol.msc), перейдите в секцию Локальные политики -> Параметры безопасности . Затем в политике “ Сетевой доступ: разрешать анонимный доступ к общим ресурсам ” (Network access: Shares that can be accessed anonymous) укажите имя сетевой папки, к которой вы хотите предоставить анонимный доступ (в моем примере имя сетевой папки – Share ).
Теперь вы можете анонимно подключиться к этому компьютеру с удаленного компьютера.
Нажмите клавишы Win+R и в окне укажите UNC (формат \IPадресИмяПапки, или \NetBIOSимякомпьютераИмяПапки) путь к сетевой папке, которую вы хотите открыть.
Если вы все настроили правильно, перед вами появится список файлов в сетевой папке на удаленном компьютере.
Такой способ предоставления анонимного доступа работал до Windows 10 2004/Windows Server. В актуальных версиях Windows при доступе к общей папке все равно появляется запрос пароля. Чтобы подключиться к удаленной папке под анонимным пользователем нужно указать имя пользователя guest (пароль указывать не нужно).
Но это все равно не очень удобно.
В этом случае нужно дополнительно включить следующие локальные политики:
- Перейдите в раздел Computer Configuration -> Windows Settings -> Security Settings -> Local Policies -> Security Options. В параметре Network access: Sharing and security model for local accounts измените значение с Classic на Guest Only . Эта политика автоматически использует аккаунт Guest при сетевом доступе к компьютеру под локальной учетной записью (подразумевается что вы вошли в Windows под локальной учетной записью );
- Перейдите в раздел Computer Configuration ->Administrative templates -> Network (Сеть) -> Lanman Workstation. Включите политику Enable insecure guest logons (Включить небезопасные гостевые входы) . Эта политика разрешит сетевой доступ к общим папкам по протоколу SMBv2 под гостевой учетной записью. Если не включать этот параметр, то при подключении под Guest появится ошибка “Вы не можете получить доступ к удаленному компьютеру из-за того, что политики безопасности вашей организации могут блокировать доступ без проверки подлинности” (cм. статью ).
Затем нужно указать, что аккаунт Guest нужно всегда использовать для доступа к сетевым ресурсам на указанно компьютере. Для этого нужно добавить в диспетчер учетных записей Windows имя (IP адрес компьютера) и имя пользователя, которое нужно использовать для подключения. Откройте командую строку и выполните команду:
cmdkey /add:192.168.13.200 /user:guest
Теперь при доступе к указанному IP, Windows всегда будет выполнять автоматический входа под сохраненной учетной записью (Guest в нашем случае)
Теперь вы можете проверить на удаленном компьютере, что клиент подключился к сетевой папке под записью guest (анонимно):
Get-SmbSession
Открыть анонимный доступ к общему сетевому принтеру
Чтобы разрешить анонимный доступ к сетевому принтеру на компьютере, нужно открыть свойства общего принтера в Панели управления (Панель управленияОборудование и звукУстройства и принтеры). На вкладке доступа отметьте опцию “ Прорисовка задания печати на клиентских компьютерах ” (Render print jobs on client computers).
Затем на вкладке безопасность для группы “Все” отметить все галки.
Теперь вы сможете подключиться к общей папке (\servernameshare) и принтеру на доменном компьютере без ввода имени пользователя и пароля, т.е. анонимно.