Помітив деякі дивні речі при доступі до каталогів SYSVOL і NETLOGON в домені з Windows 10 / Windows Server 2016. При доступі до контролера домену з клієнта по UNC шляху \\\ SYSVOL
або по IP адресою контролера домену \\ 192.168.1.10 \ Netlogon
з'являється помилка "Відмовлено в доступі"(Access is denied) із запитом введення облікового запису і пароля. При вказівці облікового запису доменного користувача або навіть адміністратора домену, каталоги все одно не відкриваються.
При цьому той же самий каталог Sysvol / Netlogon відкривається нормально (без запиту пароля), якщо вказати ім'я контролера домену: \\ dc1.domain.ru \ sysvol
або просто \\ dc1 \ sysvol
.
Крім того, на проблемних комп'ютерах з Windows 10 можуть спостерігатися проблеми із застосуванням групових політик. У журналі можна знайти помилки з EventID 1058:
The processing of Group Policy failed. Windows attempted to read the file \\ domain.ru \ sysvol \ domain.ru \ Policies \ GPO GUID \ gpt.ini from a domain controller and was not successful. Group Policy settings may not be applied until this event is resolved.
Все це пов'язано з новими настройками безпеки, які призначені для захисту доменних комп'ютерів від запуску коду (логон скриптів, виконуваних файлів) і отримання конфігураційних файлів політик з недовірених джерел - UNC hardening. Налаштування безпеки Windows 10 / Windows Server 2016 вимагають, щоб для доступу до UNC каталогам з посиленим захистом (SYSVOL і NETLOGON) використовувалися такі рівні безпеки:
- Mutual Authentication - взаємна аутентифікація клієнта і сервера. Для аутентифікації використовується Kerberos (NTLM не підтримується). Саме тому ви не можете підключитися до каталогів SYSVOL і NETLOGON на контролері домену по IP адресою. За замовчуванням
RequireMutualAuthentication = 1
. - Integrity - перевірка підпису SMB. Дозволяє переконатися, що дані в SMB сесії немодифікована при передачі. Підпис SMB підтримується тільки у версії SMB 2.0 і вище (SMB 1 не підтримує SMB підписи для сесії). За замовчуванням
RequireIntegrity = 1
. - Privacy - шифрування даних в SMB сесії. Підтримується починаючи з SMB 3.0 (Windows 8 / Windows Server 2012 і вище). За замовчуванням RequirePrivacy = 0.Еслі у вас в домені залишилися комп'ютери і контролери домени зі старими версіями Windows (Windows 7 / Windows Server 2008 R2 і нижче), ви не повинні використовувати опцію
RequirePrivacy = 1
. Інакше старі клієнти не зможуть підключитися до мережевих каталогів на контролерах домену.
Спочатку ці зміни були внесені в Windows 10 ще в 2015 році в рамках бюлетенів безпеки MS15-011 і MS15-014. В результаті був змінений алгоритм роботи Multiple UNC Provider (MUP), який тепер використовує особливі правила для доступу до критичних каталогам на контролерах домену \\ * \ SYSVOL і \\ * \ NETLOGON.
У Windows 7 і Windows 8.1 захищені UNC шляху за замовчуванням відключені.Змінити настройки UNC hardening в Windows 10 для доступу до SYSVOL і NETLOGON можна через групові політики. Ви можете використовувати різні настройки безпеки для доступу до різних UNC-шляхів за допомогою політики Hardened UNC Paths (UNC шляху з посиленим захистом).
- Відкрийте редактор локальної політики безпеки gpedit.msc;
- Перейдіть в розділ політик Computer Configuration -> Administrative Templates -> Network -> Network Provider;
- Увімкніть політику Hardened UNC Paths;
- Натисніть на кнопку Show і створіть записи для UNC шляхів до каталогів Netlogon і Sysvol. Для повного відключення UNC hardering для певних каталогів (не рекомендується !!), вкажіть значення
RequireMutualAuthentication = 0, RequireIntegrity = 0, RequirePrivacy = 0
Можна використовувати такі формати для UNC шляхів:- \\ DC_IP
- \\ domain.ru
- \\ DCName
Або можна дозволити доступ до каталогів Sysvol і Netlogon незалежно від UNC шляху:
- \\ * \ SYSVOL
- \\ * \ NETLOGON
Потрібно вказати всі необхідні вам імена доменів (контролерів домену) або IP адреси.
Microsoft рекомендує використовувати такі настройки для безпечного доступу до критичних UNC каталогом:- \\ * \ NETLOGON
RequireMutualAuthentication = 1, RequireIntegrity = 1
- \\ * \ SYSVOL
RequireMutualAuthentication = 1, RequireIntegrity = 1
Залишилося відновити політики на комп'ютері за допомогою команди gpupdate / force
і перевірити, що у вас з'явився доступ до каталогів Sysvol і Netlogon.
Ви можете налаштувати ці параметри за допомогою централізованої доменної політики. Або з допомогти наступних команд на клієнтах. (Ці команди відключать Kerberos аутентифікацію при доступі до вказаних каталогах на DC. Буде використовуватися NTLM, в результаті ви зможете відкрити захищені каталоги на DC по IP адресою):
reg add HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ NetworkProvider \ HardenedPaths / v "\\ * \ SYSVOL" / d "RequireMutualAuthentication = 0" / t REG_SZ / f
reg add HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ NetworkProvider \ HardenedPaths / v "\\ * \ NETLOGON" / d "RequireMutualAuthentication = 0" / t REG_SZ / f
- у вас стара версія адміністративних шаблонів на контролері домену (DC зі старою Windows Server 2008 R2 / Windows Server 2012), в яких відсутня параметр політик Hardened UNC Paths;
- через недоступність каталогу Sysvol клієнти не можуть отримати доменні політики, і ви не можете поширити ці настройки реєстру.