Sledovanie paketu TPROXY až k socketu
Skontrolujte prijímajúci socket, značku paketu a lokálnu trasu politiky ako jednu cestu doručenia transparentného proxy.
Počítadlo TPROXY môže rásť, aj keď aplikácia nič neprijíma. Pravidlo zodpovedalo, ale lokálne doručenie stále závisí od smerovania podľa politiky a kompatibilného prijímajúceho socketu.
Linux TPROXY dokáže zachytiť prevádzku bez prepísania cieľa, ako to robí DNAT. Pakety adresované na nelokálnu destináciu preto musia doraziť do vhodného lokálneho socketu.
Sledujte cestu doručenia
- Prevádzka dorazí k hostiteľovi zachytávania cez zamýšľané rozhranie a rodinu adries.
- Pravidlo zachytávania a značka paketu určujú politiku lokálneho doručenia.
- Zodpovedajúce pravidlo politiky vyberie trasu, ktorá pakety doručí lokálne.
- Proxy používa podporovaný transparentný poslucháč s požadovanou voľbou socketu.
Príklad IPv4 v jadre vyžaduje podporu aplikácie pre IP_TRANSPARENT. Bežný poslucháč na tom istom porte alebo globálne nastavenie nelokálneho viazania túto podporu nepreukazuje.
| Pozorovanie | Ďalšia kontrola |
|---|---|
| Žiadne relevantné prichádzajúce pakety | Cesta prevádzky a vstupné rozhranie |
| Pakety dorazia; počítadlo zachytávania sa nemení | Rodina adries, reťazec a podmienky zhody |
| Pravidlo zodpovedá; lokálne doručenie zlyháva | Značka a výber trasy politiky |
| Socket počúva; aplikácia nič nevidí | Schopnosť transparentného socketu a vlastník poslucháča |
| Požiadavka sa začne; neskoršie odpovede zlyhávajú | Zhoda nadviazaného socketu a spätné trasy |
Pri každom pozorovaní si uchovajte načítanú konfiguráciu a sieťový menný priestor. Neskoršie pravidlo môže prepísať značku alebo vybrať inú trasu. Ak k zachytávaniu dochádza na hostiteľovi, zatiaľ čo poslucháč beží v kontajneri, platná lokálna trasa hostiteľa automaticky nedoručuje do tohto kontajnera.
Rátajte s neskoršími paketmi
Príklad jadra obsahuje zhodu socketu a cestu DIVERT, ktorá označuje pakety transparentných socketov. Ak ju vynecháte, neskoršia prevádzka môže zostať na inej ceste, aj keď prvotné zachytenie uspeje.
Použite transparentný režim podporovaný aplikáciou a zodpovedajúcu dokumentáciu jadra pre každú rodinu adries. Príkaz lokálnej trasy IPv4 nenastavuje IPv6 a podpora v jednej rodine nepreukazuje správanie socketu v druhej.
TPROXY tiež nevytvára vyjednávanie SOCKS. Komponent z transparentného na SOCKS stále musí zistiť destináciu a vyjednať so svojím nadradeným serverom.
Prechod z REDIRECT
Zaznamenajte, ako existujúca aplikácia získava pôvodnú destináciu. REDIRECT mení destináciu a spolieha sa na príslušný mechanizmus obnovy; TPROXY potrebuje svoj transparentný socket a usporiadanie smerovania. Vyberajte podľa aplikácie a politiky zdrojovej adresy.
Pred zmenou režimu zachytávania spojte počítadlá s vybranou trasou, schopnosťou socketu a záznamom aplikácie. Na distribúcii, ktorá poskytuje potrebné prostriedky, je chýbajúci krok doručenia lepším východiskom než rekompilácia jadra.