Додали адресу VPN до білого списку, а блокування лишилося? Простежте її
Правило дозволу називає адресу, яку показує застосунок VPN, а запити все одно відкидаються. Зафіксуйте джерело, яке справді доходить до служби, і виправте його.
Додавання до білого списку адреси, яку показує застосунок VPN, рідко виправляє заблокований порт, і пакет пояснює чому. Міжмережевий екран не ігнорує ваше правило; він оцінює адресу джерела, якої ніщо на екрані клієнта не показує. Доки призначення не повідомить це значення, кожна зміна правила — здогад.
Почніть із запиту, який доходить до служби. Адреса тунелю, адреса виходу й будь-яке перетворення між ними лишаються гіпотезами, доки призначення не підтвердить одну з них.
Адреса в застосунку — не та, що приходить
З'єднання VPN несе щонайменше чотири адреси, які варто називати окремо: кінцеву точку сервера, внутрішню адресу тунелю, призначену вашому клієнтові, локальну адресу Wi-Fi або Ethernet і публічну адресу, яку бачить сайт після виходу трафіку від провайдера. Вікно клієнта може показувати лише другу. Назвіть усі чотири, перш ніж називати правило. За роздільного тунелювання запити до публічного призначення можуть повністю обходити тунель, тож збійний сеанс — не той, який користувач вважає започаткованим.
Визначте, яку з цих чотирьох має дозволити правило, потім перевірте її з іншого боку. Якщо вимога справді офісна адреса, умова — це маршрут плюс схема виходу того сайту, а з'єднання з позначкою Office VPN саме по собі не дає ні того, ні іншого.
Простежте один запит до межі фільтрації
Підтвердьте адресу призначення й порт, які використовує клієнт, потім перевірте, що це призначення йде передбачуваним шляхом. Опублікований порт контейнера, зворотний проксі або переспрямування порту можуть перенести рішення на хост, який ви ніколи не редагували. Кожен із цих переходів може нести власну політику. Попереднє визначення шляху позбавляє вас від виправлення правила, до якого не доходить жоден пакет.
На авторизованому хості Linux прочитайте чинні правила по порядку, перш ніж їх змінювати. Переспрямовані та контейнерні служби часто переходять у власний ланцюг, тому перегляньте і ціль переходу, і остаточний вердикт.
iptables -vnL INPUT --line-numbers
iptables -S INPUT | head -n 40
ss -ltnp | grep -E ':(443|9443)\b'Укажіть у заявці номер відповідного правила. Без нього наступний читач не зрозуміє, яка зміна вплинула на результат. Номер правила без позначки часу все ще неоднозначний.
Перевірте шлях одним обмеженим записом
Один нешкідливий запит і один вузький запис вирішують питання, яке постійно повертається. Фільтруйте за портом призначення й досліджуваним хостом, обмежте кількість пакетів і зупиніть запис, щойно запит завершиться.
tcpdump -ni any 'tcp dst port 9443' -c 20Порівняйте три значення поряд: джерело в записі, джерело, яке називає відповідне правило, і відмову, яку зафіксував застосунок. Усі вони можуть різнитися, і лише перше пояснює відкидання, вирішене правилом IP. Переданий заголовок HTTP належить рівню проксі, тож журнал, що цитує цей заголовок, не описує джерело, яке оцінив міжмережевий екран.
Читайте порядок ланцюга, а не лише правило
Довідка iptables описує впорядкований прохід, тому дозвіл, що стоїть нижче відповідної кінцевої відмови, ніколи не рятує пакет. З'єднання, прийняте раніше, теж може поводитися інакше, ніж нове, тож старий успіх нічого не каже про нове правило. Знайдіть відмову або відкидання вище за ваш дозвіл, перш ніж вважати дозвіл хибним. Лічильники за кожним правилом також показують, яке правило побачило пакет.
Видалення правила, щоб подивитися, що станеться, — це зміна, а не спостереження. Прочитайте лічильники, запишіть номер правила й збережіть початкову політику в журналі змін. Якщо тест неминучий, виконайте його на копії ланцюга.
Змініть правило, яким керує його власник
Оновлюйте лише передбачену політику джерела й служби, через того, хто нею володіє. Спільний перетворений вихід може представляти багатьох користувачів одночасно, тож дозвіл цієї адреси нікого не автентифікує, а права застосунку за ним лишаються на місці.
Коли адреса продовжує рухатися, стала відповідь — стабільний вихід або автентифікований канал, а не довший список винятків. Запишіть спостережуване джерело, порт призначення й номер правила.