TPROXY пакетін сокетке дейін қадағалау
Қабылдаушы сокетті, пакет белгісін және жергілікті саясат маршрутын мөлдір проксидің бір жеткізу жолы ретінде тексеріңіз.
TPROXY санауышы өсуі мүмкін, бірақ қолданба ештеңе қабылдамайды. Ереже сәйкес келді, алайда жергілікті жеткізу саясат маршруттауына және сәйкес қабылдаушы сокетке байланысты болып қалады.
Linux TPROXY трафикті DNAT сияқты межелі мекенжайды қайта жазбай ұстап ала алады. Сондықтан жергілікті емес межеге бағытталған пакеттер тиісті жергілікті сокетке жетуі керек.
Жеткізу жолын қадағалаңыз
- Трафик күтілген интерфейс пен мекенжай тобы бойынша ұстап алу хостіне жетеді.
- Ұстап алу ережесі мен пакет белгісі жергілікті жеткізу саясатын анықтайды.
- Сәйкес саясат ережесі пакеттерді жергілікті жеткізетін маршрутты таңдайды.
- Прокси қажетті сокет параметрі бар қолдау көрсетілген мөлдір тыңдаушыны пайдаланады.
Ядроның IPv4 мысалы IP_TRANSPARENT үшін қолданба қолдауын талап етеді. Сол порттағы қарапайым тыңдаушы немесе ғаламдық жергілікті емес байланыстыру параметрі бұл қолдауды дәлелдемейді.
| Бақылау | Келесі тексеру |
|---|---|
| Сәйкес кіретін пакеттер жоқ | Трафик жолы және кіру интерфейсі |
| Пакеттер келеді; ұстап алу санауышы қозғалмайды | Мекенжай тобы, тізбек және сәйкестік шарттары |
| Ереже сәйкес; жергілікті жеткізу сәтсіз | Белгі және саясат маршрутын таңдау |
| Сокет тыңдайды; қолданба ештеңе көрмейді | Мөлдір сокет мүмкіндігі және тыңдаушы иесі |
| Сұраныс басталады; кейінгі жауаптар сәтсіз | Орнатылған сокеттің сәйкестігі және қайтару маршруттары |
Әр бақылаумен бірге жүктелген конфигурацияны және желілік аттар кеңістігін сақтаңыз. Кейінгі ереже белгіні қайта жазып немесе басқа маршрут таңдай алады. Егер тыңдаушы контейнерде жұмыс істеп жатқанда ұстап алу хостта болса, хосттың жарамды жергілікті маршруты сол контейнерге автоматты түрде жеткізбейді.
Кейінгі пакеттерді ескеріңіз
Ядро мысалы сокет сәйкестігін және мөлдір сокеттерге тиесілі пакеттерді белгілейтін DIVERT жолын қамтиды. Оны қалдыру бастапқы ұстап алу сәтті болса да кейінгі трафикті басқа жолда қалдыруы мүмкін.
Қолданбаның қолдайтын мөлдір режимін және әр мекенжай тобы үшін сәйкес ядро құжаттамасын пайдаланыңыз. IPv4 жергілікті маршрут пәрмені IPv6-ны баптамайды, және бір топтағы қолдау екіншісінің сокет әрекетін дәлелдемейді.
TPROXY сондай-ақ SOCKS келіссөзін жасамайды. Мөлдірден SOCKS-ке компонент әлі де межені анықтап, өз жоғарғы ағынымен келіссөз жүргізуі керек.
REDIRECT-тен көшу
Қолданыстағы қолданбаның бастапқы межені қалай алатынын жазып алыңыз. REDIRECT межені өзгертеді және тиісті қалпына келтіру механизміне сүйенеді; TPROXY-ге өзінің мөлдір сокеті мен маршруттау құрылымы қажет. Қолданба мен бастау мекенжайы саясатына қарай таңдаңыз.
Ұстап алу режимдерін ауыстырмас бұрын санауыштарды таңдалған маршрутпен, сокет мүмкіндігімен және қолданба журналымен байланыстырыңыз. Қажетті құралдарды ұсынатын таратымда жетіспейтін жеткізу қадамы ядроны қайта компиляциялаудан жақсы бастау болып табылады.