socat SOCKS көпүрөлөрү: сайттын TLS хост атын сактоо
Бир SOCKS багыты үчүн loopback TCP угуучусун колдонуп, колдонмодо HTTP жана TLS идентификациясын сактаңыз.
Колдонмодо SOCKS параметри жок, бирок ал тандалган TCP дарегине туташа алат. Бекитилген бутагы бар адаптер бир багыт үчүн SOCKS сүйлөшүүсүн камсыздай алат. Ал дагы бир жалпы форварддык прокси болушу шарт эмес.
SOCKS4A сунуштаган socat курулуштары үчүн үлгүлүү жайгашуу мындай:
socat TCP4-LISTEN:9443,bind=127.0.0.1,reuseaddr,fork \
SOCKS4A:127.0.0.1:service.example.net:443,socksport=1080
SOCKS акыркы чекити — жергиликтүү 1080 порту. Адаптер жергиликтүү 9443 портунда угат жана ошол чекиттен service.example.net:443 сурайт. Бул үлгү маанилер, кызматтын толук жайгаштырылышы эмес.
Адаптердин бир бекитилген бутагы бар
Ар бир кабыл алынган TCP байланыш бирдей кызматты сурайт. 9443кө туташкан колдонмо өзүнүн кадимки протокол байттарын берет; SOCKS4A сүйлөшүүсүн socat берет. 9443кө жаңы HTTP CONNECT сурамын жөнөтүү башка багытты тандабайт—ал байттарды бекитилген кызматка жөнөтөт.
SOCKS4A алыскы чечүү үчүн SOCKS акыркы чекитине хост атын берет. Бул кардар тандаган даректи колдонгон SOCKS4 формасынан айырмаланат. Тандалган жогорку агым—SOCKS4 прокси тизмесинен алынган коомдук талапкерди кошкондо—SOCKS4A хост атын иштетүүнү жана талап кылынган аутентификацияны колдошу керек; бул мисал SOCKS5 сырсөз менен кирүү рецепти эмес.
Жергиликтүү туташыңыз, чыныгы кызматты аныктаңыз
HTTPS дарегин https://127.0.0.1:9443/ дарегине өзгөртүү кардар TLS жана HTTP үчүн колдоно алган хост атын өзгөртөт. service.example.net үчүн сертификат loopback үчүн жарактуу сертификат болуп калбайт.
Кардар өзүнчө байланыш маршруттоосун колдосо, баштапкы даректин идентификациясын сактаңыз. Curl бул айырманы көрсөтө алат:
curl --noproxy '*' \
--connect-to service.example.net:443:127.0.0.1:9443 \
https://service.example.net/
Сокет жергиликтүү адаптерге барат, ал эми TLS текшерүү жана HTTP багыты service.example.net бойдон калат. Башка колдонмолорго өздөрүнүн барабар колдоого алынган көзөмөлү керек; ар бир кардар аны сунуштай бербейт.
Loopback байлоо тармактык таасирди чектейт, бирок башка ылайыктуу жергиликтүү процесстер ага дагы жете алат. Кызматтын жашоо убактысын жана колдонуучуларды ылайыктуу кармаңыз. Loopback дарегинен келип чыккан идентификация катасын басуунун ордуна TLS текшерүүсүн сактаңыз.