Eman urruneko Pi bati SOCKS proxy bat zure SSH bezeroaren bidez
Urruneko birbidalketa dinamikoak SOCKS entzulea Pi-an jartzen du eta hurrengo konexioa zure eramangarriaren onartutako VPN bidetik egiten du. Bigarren SSH zerbitzaririk gabe.
SOCKS proxyak sareko sarbidea lehendik dagoen tokian bertan exekutatu behar duela suposatzen duzu. OpenSSH-k entzulea erabat beste leku batean jar dezake. Urruneko birbidalketa dinamikoak SOCKS ataka urruneko ostalari batean irekitzen du eta konexio bakoitza zure tokiko SSH bezerotik abiatzen du, zeinak zure eramangarriaren onartutako VPN bidea daraman. Pi-ak proxy mugatua lortzen du; ez du zure tunela edo zure pribilegioak heredatzen.
Entzulea eta konexioa abiatzen den aldea desberdinak izan daitezke
ssh -D 1080 arrunt batek entzulea zure makina propioan exekutatzen du eta hortik bidaltzen ditu konexioak. Urruneko birbidalketa dinamikoak hori iraultzen du: entzulea urruneko ostalarian agertzen da, eta onartzen duen konexio bakoitza tokiko aldetik irekitzen da. OpenSSH bezeroaren eskuliburua dokumentuak -R helmuga finkorik gabe zehazki SOCKS4/5 antolamendu hau bezala deskribatzen du.
Eramangarritik onartutako komando batek itxura hau du, kontua, ostalariak eta ataka leku-markatzat hartuta:
ssh -NT -S none -o ExitOnForwardFailure=yes \
-o PermitRemoteOpen=app.corp.example:443 \
-R 1080 [email protected]
Hiru xehetasunek lan erabilgarria egiten dute han. -S none saioa kontrol-master partekatu batetik urrun edukitzen du, ExitOnForwardFailure azkar huts egiten du saio erdi-irekia utzi beharrean, eta PermitRemoteOpen mugatzen du urruneko entzuleak zer har dezakeen. Erabili baimendutako Pi kontu bat eta egiaztatu ostalariaren gakoa horietako ezer gehitu aurretik.
Zer erakusten duen urruneko entzuleak benetan
Egiaztatu zerbitzariaren birbidalketa-politika entzulean fidatu aurretik. GatewayPorts no-rekin urruneko birbidalketa loopback-era lotuta geratzen da, eta hori da nahi duzun esposizioa. Wildcard birbidalketa behartzeko konfiguratutako zerbitzari batek ataka bera interfaze guztietan argitaratzen du, eta horrek proxy pertsonala sare lokalak har dezakeen zerbait bihurtzen du.
Loopback ere ez da erabiltzaile bakoitzeko muga. Pi-ko beste prozesu batek 127.0.0.1:1080-ra konekta dezake ataka ezagutzen badu, beraz Pi-ren tokiko kontuak eta bertan exekutatzen dena zure sarbide-diseinuaren parte dira. Hori helmugen zerrenda estua edukitzeko arrazoia da, ez politika-egiaztapena saltatzeko arrazoia.
Eduki baimendutako helmuga lortu nahi duzun aplikazioari dagokiona. Hura mugarik gabeko birbidalketarekin ordezkatzeak, erlaziorik gabeko programa bat funtziona dezan, hasi zinen arazoaren askoz harago zabaltzen du bidea. Helmugen zerrendak saioa zertarako zen ere erregistratzen du, eta horrek geroago auditatu behar duenari laguntzen dio. Idatzi ezazu erabili zenuen kontuaren ondoan.
Bidali aplikazio bat proxyaren bidez
Pi-ko proxyaz ulertzen duen bezero batek eskaera egin dezake orduan. socks5h aurrizkiak helmugaren izena proxyari ematen dio, beraz bilaketa eta konexioa biak eramangarriaren aldean gertatzen dira, eta PermitRemoteOpen-n izendatutako helmugarekin bat dator:
curl --proxy socks5h://127.0.0.1:1080 \
--noproxy '' https://app.corp.example/
Mantendu ziurtagiriaren ohiko baliozkotzea eta aplikazioaren beraren autentifikazioa. Proxyak TCP konexioa non egiten den aldatzen du; ez du autentifikaziorik gabeko zerbitzu bat seguru bihurtzen, eta ez du auto-sinatutako mutur bat fidagarri bihurtzen.
Eramangarriari bere ibilbidea eta resolver sarbidea behar zaizkio oraindik, SSH zerbitzarira eta aplikaziora bietara. Bere SSH bezeroaren trafikoa onartutako VPN politikak hautatu behar du, eta split-tunnel bazterketa batek trafiko hori probatu zenuen bideaz bestelako batetik bidal dezake.
Frogatu bidea eta itxi
Egiaztatu entzulea espero duzun lekuan dagoela eta helmuga aurreikusitakoak bakarrik erantzuten duela:
$ 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 birbidalketa ezarri zela froga dezake, eta hala ere ezin du ziurtatu aplikazioaren saio-hasiera beherago arrakastatsua denik. Probatu aplikazioa, ez ataka soilik. Onartu eta gero eskaera bakoitzean huts egiten duen entzule batek esan nahi du normalean helmugaren izena edo eramangarriaren ibilbidea okerrak direla, ez tunela huts egin duenik.
Antolamendu honek TCP baino ez du eramaten. UDP, ICMP eta proxy ezarpenak alde batera uzten dituzten programak kanpoan geratzen dira, eta birbidalketa SSH saioa amaitzen den unean amaitzen da. Gelditu saio hori amaitzean eta kendu aplikazioari gehitutako proxy ezarpena.
Sarbide iraunkorrerako, erabili horren ordez sarearen jabearen onartutako izen-ematea edo kudeatutako atebidea. Alderantzizko proxya tresna okerra da VPN baten gailu- edo baliabide-murrizketak saihesteko; horien barruan erabilita, muga esplizituak dituen aplikazio-bide baimendu bat besterik ez da.