Алыскы Piге SSH кардарыңыз аркылуу SOCKS прокси бериңиз
Алыскы динамикалык багыттоо SOCKS угуучусун Piге коюп, кийинки туташууну ноутбугуңуздун бекитилген VPN жолунан жасайт. Экинчи SSH серверинин кереги жок.
Сиз SOCKS прокси тармакка мүмкүнчүлүк бар жерде иштеши керек деп ойлойсуз. OpenSSH угуучуну таптакыр башка жерге коё алат. Алыскы динамикалык багыттоо SOCKS портун алыскы хостто ачат жана ар бир туташууну ноутбугуңуздун бекитилген VPN жолун алып жүргөн жергиликтүү SSH кардарыңыздан баштайт. Pi чектелген прокси алат; ал сиздин тоннелиңизди же артыкчылыктарыңызды мураска албайт.
Угуучу жана туташуу башталган тарап айырмаланышы мүмкүн
Кадимки ssh -D 1080 угуучуну өз машинаңызда иштетип, туташууларды ошол жерден жөнөтөт. Алыскы динамикалык багыттоо муну тескери кылат: угуучу алыскы хостто пайда болот жана ал кабыл алган ар бир туташуу жергиликтүү тараптан ачылат. OpenSSH кардарынын колдонмосу -R параметрин туруктуу максатсыз дал ушул SOCKS4/5 курулушу катары сүрөттөйт.
Ноутбуктан колдоого алынган буйрук мындай көрүнөт, мында эсеп, хосттор жана порт орун толтургучтар катары каралат:
ssh -NT -S none -o ExitOnForwardFailure=yes \
-o PermitRemoteOpen=app.corp.example:443 \
-R 1080 [email protected]
Анда үч деталь пайдалуу иш аткарат. -S none сессияны жалпы башкаруу мастерден алыс кармайт, ExitOnForwardFailure сизди жарым ачык сессия менен калтыруунун ордуна тез ишке жарабайт, ал эми PermitRemoteOpen алыскы угуучунун кайда жете аларын чектейт. Ыйгарылган Pi эсебин колдонуңуз жана булардын кайсынысын болбосун кошуудан мурун хост ачкычын текшериңиз.
Алыскы угуучу чындыгында эмнени ачат
Угуучуга таянардан мурун сервердин багыттоо саясатын текшериңиз. GatewayPorts no менен алыскы багыттоо loopbackке байланган бойдон калат жана бул сиз каалаган таасир. Wildcard багыттоону мажбурлаган сервер ошол эле портту ар бир интерфейсте жарыялайт, бул жеке проксини жергиликтүү тармак жете ала турган нерсеге айландырат.
Loopback да колдонуучуга жараша чек эмес. Piдеги башка процесс портту билсе, 127.0.0.1:1080 менен туташа алат, ошондуктан Piнин жергиликтүү эсептери жана анда иштегендин баары сиздин кирүү долбооруңуздун бөлүгү. Бул максаттар тизмесин кууш кармоонун себеби, саясат текшерүүсүн өткөрүп жиберүүнүн себеби эмес.
Уруксат берилген максатты жетүүгө аракет кылып жаткан колдонмого таандык кылып кармаңыз. Аны чексиз багыттоо менен алмаштыруу, байланышы жок программа иштеши үчүн, жолду сиз баштаган маселеден алда канча кеңейтет. Максаттар тизмеси сессия эмне үчүн болгонун да жазат, бул кийин аны текшерген адамга жардам берет. Аны колдонгон эсебиңиздин жанына жазып коюңуз.
Бир колдонмону прокси аркылуу өткөрүңүз
Piде проксини түшүнгөн кардар андан кийин сурамды жөнөтө алат. socks5h префикси максаттын атын проксиге берет, ошондуктан издөө да, туташуу да ноутбук тарапта болот жана PermitRemoteOpen ичиндеги аталган максатка туура келет:
curl --proxy socks5h://127.0.0.1:1080 \
--noproxy '' https://app.corp.example/
Кадимки сертификат текшерүүсүн жана колдонмонун өзүнүн аутентификациясын сактаңыз. Прокси TCP туташуусунун кайда түзүлөрүн өзгөртөт; ал аутентификациясыз кызматты коопсуз кылбайт жана өзүнө кол коюлган акыркы чекитти ишенимдүү кылбайт.
Ноутбукка дагы эле өзүнүн маршруту жана SSH серверине да, колдонмого да чечүүчүгө кирүү керек. Анын SSH кардарынын трафиги бекитилген VPN саясаты менен тандалышы керек, ал эми split-tunnel өзгөчөлүгү бул трафикти сиз сынаган жолдон башка жол менен жөнөтүшү мүмкүн.
Жолду далилдеп, аны жабыңыз
Угуучу сиз күткөн жерде бар экенин жана тек көздөлгөн максат гана жооп берерин ырастаңыз:
$ ss -ltnp | grep 1080
LISTEN 0 128 127.0.0.1:1080 0.0.0.0:*
$ curl -sS -o /dev/null -w '%{http_code}\n' \
--proxy socks5h://127.0.0.1:1080 https://app.corp.example/
ExitOnForwardFailure багыттоонун орнотулганын далилдей алат, бирок колдонмого кирүү төмөнкү агымда ийгиликтүү болорун күбөлөндүрө албайт. Портту эмес, колдонмону сынаңыз. Кабыл алып, анан ар бир сурамды ишке жаратпаган угуучу адатта тоннелдин иштебей калганын эмес, максаттын аты же ноутбуктун маршруту туура эмес экенин билдирет.
Бул курулуш тек TCP ташымалдайт. UDP, ICMP жана прокси жөндөөлөрүн этибарга албаган программалар анын сыртында калат, ал эми багыттоо SSH сессиясы бүткөн учурда бүтөт. Ишиңиз бүткөндө ошол сессияны токтотуңуз жана колдонмого кошкон прокси жөндөөсүн алып салыңыз.
Туруктуу кирүү үчүн анын ордуна тармак ээсинин колдогон каттоосун же башкарылуучу шлюзди колдонуңуз. VPNдин түзмөк же ресурс чектөөлөрүн айланып өтүү үчүн тескери прокси туура эмес курал; ошол чектөөлөрдүн ичинде колдонулса, ал так чектерге ээ бир гана ыйгарылган колдонмо жолу.