Додавання користувача до групи VPN саме по собі не дає доступу
Членство в групі — одна умова, а не дозвіл. Подивіться, що шлюз справді зіставив, прочитайте запис про прийняття чи відмову і перевірте обидва результати.
Обліковий запис у потрібній групі, вхід успішний, а з’єднання все одно відхиляється або не дає нічого корисного. Додавання груп дає більше, ніж просив тікет. Членство — один вхід, не рішення: шлюз зіставляє факти з упорядкованою політикою і лише потім вирішує. Якщо інша умова не виконана, група змінює тільки експозицію.
Членство в групі — умова, а не дозвіл
У RADIUS група є атрибутом авторизації й описує сеанс, а не дозволяє його. Сервер відповідає Access-Accept або Access-Reject і може додати Filter-Id, Class чи тунельні атрибути з RFC 2868. Ніщо не перетворює групу на повний доступ; це зіставлення пише той, хто налаштував політику.
Тому однакова назва групи поводиться по-різному в двох системах. Microsoft NPS складає політики з умов, обмежень і налаштувань та оцінює їх у визначеному порядку. OpenVPN Access Server має власну модель, а спільнотний сервер часто віддає все скрипту client-connect або файлу client-config-dir.
Вирішує правило, яке збіглося, а не група, якої ви чекали
Більшість рушіїв зупиняються на першій відповідній політиці або найконкретнішій. Якщо політика 3 відмовляє, а політика 7 дозволяє, сеанс може впасти, не діставшись правила, яке б його пропустило.
Умови, що йдуть із групою, — друга половина: стан пристрою, метод автентифікації, завершена MFA, вихідна мережа, суб’єкт сертифіката або часове вікно. Якщо однієї немає, політика не збігається і діє типова відмова.
Деталі каталогу створюють ту саму ілюзію. Політика за членством у групах Windows читає SID у токені, де лише групи безпеки; група розсилки ніколи не з’являється.
Прочитайте запис про прийняття чи відмову, перш ніж торкатися групи
Спершу одне питання: чи дійшов запит до етапу авторизації? У NPS 6272 фіксує наданий доступ, 6273 — відмову, а 6274 — запит, відкинутий до оцінки політики. Ці три числа ділять проблему на три розслідування, і лише одне стосується груп.
| What the record shows | What it means | Where to look next |
|---|---|---|
| 6272, access granted | Authentication and authorization both succeeded | Routes, split tunnel, DNS, per-resource rules |
| 6273, access denied | A policy matched and denied, or nothing matched and the default denied | The conditions of the policy that fired, in order |
| 6274, request discarded | The request never reached authorization | Shared secret, NAS client entry, proxy chain, malformed attributes |
Коли журнал недоступний, запитайте сервер напряму й прочитайте відповідь. Без Filter-Id і тунельних атрибутів сервер вважає сеанс звичайним, а шлюз застосовує власні правила.
radtest alice 'password' 10.0.0.5 0 testing123
Порівняйте повернені атрибути з тими, що документує шлюз, а не з тим, що підказує назва групи. Це відокремлює проблему політики від проблеми застосування.
Зміна групи не діє заднім числом
Атрибути авторизації повертаються один раз, під час автентифікації сеансу. Шлюз зберігає їх на сеансі й не перечитує каталог для кожного пакета, тому встановлений сеанс працює далі після вилучення з групи.
Щоб зміна набула чинності, потрібне нове рішення про авторизацію, а не лише нові ключі. За RFC 5176 Disconnect-Request або CoA-Request на UDP 3799 змушує переоцінити сеанс; інакше відключіть клієнта й дозвольте підключитися знову.
Виправляйте умову, а не групу
Коли відомо, яка політика спрацювала, виправлення зазвичай мале: переставте відмову, що затіняє потрібний дозвіл, додайте відсутню умову пристрою або MFA, або напишіть вузьке правило для одного ресурсу.
Короткий цикл тримає зміну чесною:
- Відтворіть відмову з початковим обліковим записом і запишіть ID події перед будь-якою зміною.
- Змінюйте один об’єкт — порядок політик, одну умову або одну групу — і записуйте, який саме.
- Відкрийте новий сеанс, підтвердьте, що дозвіл видно в журналі й ресурс справді відкривається.
- Перевірте користувача, якому ще має бути відмова, щоб виправлення не розширило політику.
Якщо дозвіл правильний, а ресурс не відкривається, проблема перейшла в маршрутизацію або розв’язання імен тієї миті, коли авторизація пройшла.