Співробітникам потрібно потрапляти в один застосунок у VPC і не можна потрапляти до слухача бази даних на тому ж інстансі, тому хтось додає другу публічну підмережу для ендпоінта VPN і оголошує вимогу виконаною. Розміщення підмережі змінює маршрутизацію та доступність. Воно не дає і не забирає жодного порту. Дозвіл, що виражає вимогу, міститься в пункті призначення, у групі безпеки ресурсу, а межа VPN дає ручку, на яку посилається це правило.

Розміщення підмережі — це маршрутизація, а не авторизація

Те, де розташоване мережеве зв'язування ендпоінта, визначає, яка таблиця маршрутів несе трафік клієнтів і які зони доступності переживуть збій. Воно нічого не каже про те, до якого порту на якому інстансі цей трафік може дістатися. Два клієнти, пов'язані з однією підмережею, все одно приходять з однаковою ідентичністю джерела, і ресурс не може розрізнити їх за назвою підмережі.

Почніть натомість із вимоги: хто викликає, який ресурс, який порт служби і який напрямок. Потім виберіть модель правила, здатну виразити ці чотири речі в пункті призначення. Такий підхід зазвичай повністю прибирає зайву підмережу з проєкту.

Група зв'язування Client VPN і є ця ручка

Для ендпоінта AWS Client VPN, пов'язаного з підмережею, задокументований порядок конкретний. Застосуйте передбачувану групу безпеки до мережевих зв'язувань цільової мережі ендпоінта, потім дозвольте потрібний трафік у групі безпеки ресурсу, використовуючи цю групу Client VPN як джерело.

Конкретно, група інстанса застосунку дозволяє порт застосунку з групи зв'язування і нічого більше. Процедура доступу до ресурсу AWS описує це відношення, і варто зберігати ту саму політику групи в кожній підмережі, з якою зв'язується ендпоінт, бо застаріле зв'язування з іншою групою тихо розширює межу.

Це правило нікого не автентифікує. Вхід — окремий контроль, а шлях до ресурсу — третій. Усі три мають виконуватися до надходження запиту. Яке з них відмовило, визначає правильне виправлення, і зміна правила — правильна відповідь лише для першого.

Що не може розрізнити одна група зв'язування

Кожен клієнт за однією і тією ж групою зв'язування досягає ресурсу як одне й те саме джерело групи безпеки. Два користувачі з різними ролями невирізнювані на цьому рівні, хоч би як група називалася чи позначалася. Авторизація зовнішніх груп у Client VPN обмежує доступ за префіксом призначення для групи каталогу або SAML, що грубіше за роль ресурсу і має розглядатися як мережева межа, а не як система ідентичності.

Тонші відмінності належать застосунку. Слухача бази даних, який має залишатися закритим для більшості персоналу, краще захищає повна недоступність на дозволеному префіксі, ніж надія на те, що членство в групі залишиться охайним.

Перейменування групи не створює ідентичності, а дублювання за командами лише множить зв'язування, які треба перевіряти.

Не копіюйте це правило в кожен проєкт VPN

Самостійно керований шлюз EC2 VPN, маршрутизований пристрій перевірки й керований Client VPN — це три різні шляхи пакетів. Установіть, яка адреса джерела справді досягає ресурсу, чи відбувається трансляція на шляху і які механізми посилань служба підтримує на цьому шляху.

Передача трафіку через проміжний пристрій не зберігає посилання на групу безпеки джерела так, як це робить прямий трафік між інстансами. AWS документує, що таким проєктам можуть знадобитися відповідні приватні адреси джерела або CIDR замість посилання на групу. Процедура керованого Client VPN не є доказом того, що приєднана група кожного шлюзу працює як універсальний маркер ідентичності для пересланих пакетів.

Одного стрибка NAT на шляху достатньо, щоб зламати припущення, і збій виглядає як правило, яке існує, але ніколи не збігається.

Перегляньте фактичну межу

Прочитайте кожну групу безпеки, приєднану до ресурсу, бо дозвільні правила додаються, а вузьке правило не скасовує ширшого в іншій групі. Потім перевірте мережевий ACL, брандмауер хоста й власну авторизацію застосунку — це окремі шари з окремими помилками.

Завершіть одним дозволеним і одним навмисно виключеним запитом до того ж ресурсу. Ця пара доводить межу, тоді як одне успішне з'єднання доводить лише те, що щось відкрито. Підтвердьте маршрут, фактичне джерело й передбачуваний порт служби, а не підмережу, що містить ендпоінт.

Порядок роботи: напишіть вимогу з чотирьох частин, приєднайте групу до зв'язувань, обмежте правило ресурсу портом, перевірте один дозвіл і одну відмову, і лише потім розглядайте поділ підмереж заради маршрутизації.

Схожі статті