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

До двох сервісів на одному шлюзі можна дістатися через різні родини адрес, різні підмережі та різну політику.

Відділіть робочий потік від неробочого

Ставтеся до кожного сервісу як до власного потоку, а не як до симптому VPN. Показовий клієнт може відкрити portal.corp.example на 172.20.4.15:443 і все одно не дістатися до бази даних на 172.20.9.40:5432, бо це два пункти призначення з двома наборами правил. Запишіть обидва рядки, перш ніж щось змінювати, включно з портом і протоколом, адже правило, яке дозволяє TCP 443 на одному хості, нічого не каже про TCP 5432 на тому самому хості.

Досліджувати треба неробочий рядок. Робочий рядок лише показує, де розташована базова лінія, і він стане точкою порівняння після кожної зміни.

Порівняйте адреси, перш ніж порівнювати імена

Розв'яжіть кожне повне ім'я через ту політику, яку застосунок справді використовує, а потім запишіть обрану родину адрес. Одне ім'я може повернути адресу IPv6, а інше — IPv4, і стара кешована відповідь може надіслати запит на публічну адресу, яка не має жодного стосунку до приватного сервісу.

ip route get 172.20.4.15
ip route get 172.20.9.40
ip -6 route get 2001:db8:60::20

Пошук відповідає на вузьке питання: який маршрут цей хост обере для того пункту призначення за поточних таблиць і правил політики. Маршрут до 172.20.4.0/24 не покриває 172.20.9.0/24, і другий менеджер мережі або локальний маршрут із кращою специфічністю може тихо перекрити тунель. Повторіть пошук усередині простору імен або з міткою, яку використовує застосунок, коли вони відрізняються від вашої оболонки. Запишіть і інтерфейс, через який пакет виходить, бо таблиця маршрутів може називати один інтерфейс, тоді як маршрутизація за політикою випускає потік через інший.

Збіжний маршрут — це необхідна умова, а не дозвіл. Він каже, що пакету є куди йти, і нічого про те, чи прийме його міжмережевий екран, служба авторизації або сам хост.

Протокол і етап відповіді показують, де все зупиняється

Відповідь на ping не доводить, що порт бази даних відкритий, а успішна сторінка HTTPS не авторизує спільний доступ до файлів на тій самій машині. Записуйте, що реально повернулося, замість того щоб згладжувати кожну невдачу в одну категорію. Тайм-аут, скидання, помилка ідентичності TLS і відмова на рівні застосунку — кожна вказує на інший шар.

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

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

Змініть одну змінну й повторіть обидва запити

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

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

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

Схожі статті