Jinsi upelekaji wa ndani wa SSH hubeba kikao cha TCP OpenVPN
Bandari moja ya ndani, mahusiano mawili yaliyothibitishwa, usafirishaji tatu. Kile upelekaji wa SSH husogeza, na wapi kitanzi na ukaguzi wa cheti bado unatumika.
Hapa tabaka tatu za usafirishaji zinarundikana, na kila moja ina fremu yake. Mzigo wa VPN husafiri ndani ya kikao cha TLS, kikao hicho cha TLS husafiri ndani ya muunganisho wa TCP kuelekea bandari ya loopback, na bayti za muunganisho huo husafiri ndani ya SSH kuelekea mwenyeji wa relay, ambaye hufungua muunganisho halisi wa TCP kuelekea msikilizaji wa VPN. Hakuna katika mpangilio huu kinachobadilisha kile OpenVPN inathibitisha, na hakuna ndani yake kinachofanya msikilizaji wa UDP afikike kwa TCP. Soma mengine kama maelezo ya njia ya bayti, si kama mapishi ya kukwepa udhibiti wa mtandao.
Kile upelekaji wa ndani husogeza kweli
Mteja wa SSH husikiliza kwenye bandari ya ndani. Mchakato wa ndani unapounganisha, mteja hufunga bayti kwenye kituo chake kilichosimbwa, na upande wa seva hufungua muunganisho mpya wa TCP kuelekea lengwa lililotajwa katika ombi la upelekaji.
Lengo hilo hulitatua relay, si mashine yako, ndiyo sababu jina linalopatikana ndani ya mtandao wa mbali tu bado linafanya kazi. Hii pia inamaanisha relay lazima ifikie msikilizaji wa VPN na iwe na njia ya kurudi kwake. Jina linalotatuliwa kwenye kompyuta yako ya mkononi halisemi chochote kuhusu kile relay inaweza kuona.
Kuanzisha kikao cha SSH kunathibitisha tu kwamba relay inafikika na imethibitishwa. Haisemi kama msikilizaji anayefuata anaendelea, kama firewall kati ya relay na msikilizaji inakubali muunganisho, au kama VPN itakubali wasifu wako.
Elekeza mteja kwa msikilizaji wa ndani
Mfano uliotangazwa: relay inaweza kufikia msikilizaji wa TCP kwenye gw.internal.example:443, na bandari ya juu ya ndani hufichua njia hiyo kwa mashine hii pekee.
ssh -N -L 127.0.0.1:24011:gw.internal.example:443 [email protected]Mwongozo wa OpenSSH unaeleza upelekaji wa ndani kama kukubali muunganisho wa TCP kwa ndani na kufungua muunganisho unaofuata kutoka upande wa mbali. Funga msikilizaji kwenye loopback badala ya violesura vyote, kwa sababu upelekaji unaofikika kutoka mtandao ni relay iliyo wazi yenye jina lako. Kufunga kwa alama ya pori pia hufichua bandari kwa akaunti yoyote nyingine ya ndani kwenye mashine inayoshirikiwa.
Kisha weka mteja wa VPN katika hali ya TCP na uelekeze kwenye 127.0.0.1:24011. Ikiwa wasifu unatumia UDP, muundo huu hauwezi kusaidia: upelekaji hubeba mtiririko wa bayti, na hakuna njia ya datagram ndani yake.
Tenganisha uthibitisho mbili
SSH inathibitisha mwenyeji wa relay. OpenVPN bado inathibitisha mwenza wa VPN, na lengwa la loopback halibadilishi sharti hilo. Kuzima ukaguzi wa cheti kwa sababu soketi sasa inaelekea localhost ni njia ya mkato mbaya zaidi katika muundo huu. Inabadilisha mpangilio wa usafirishaji kuwa mpangilio wa uaminifu, na hakuna aliyekubali wa pili.
Weka nanga ya uaminifu ya wasifu, ukaguzi wa jukumu la seva na uthibitisho wa jina bila kuguswa. Ikiwa mteja wako analinganisha jina la seva na anwani aliyopiga, loopback inaweza kuhitaji mpangilio bayana wa jina badala ya ukaguzi uliozimwa, na nyaraka za wasifu ndipo mahali pa kuthibitisha sehemu ipi inalinganishwa.
Chukulia relay kama upande wa pili katika hadithi ya uaminifu: msimamizi wake anaweza kuona metadata ya muunganisho na anaweza kuelekeza upelekaji mahali pengine ikiwa usanidi utabadilishwa. Mpangilio unahitaji idhini kutoka kwa relay na mmiliki wa huduma ya VPN, si tu kutoka kwa anayehitaji leo.
Usijenge kitanzi chini ya handaki
Baada ya VPN kufunga njia, muunganisho wa SSH unaoibeba bado unahitaji njia kuelekea relay ambayo haipiti handaki. Ikiwa njia ya msingi inahamia VPN na relay inafikika kwa handaki hilo hilo tu, usafirishaji unaanguka na VPN inaenda pamoja nao. Hitilafu inaonekana kama handaki lililoanguka badala ya kosa la uelekezaji, ndiyo sababu hutambuliwa vibaya.
Suluhisho la kawaida ni njia ya mwenyeji kuelekea anwani ya relay iliyobainishwa kwenye kiolesura cha kimwili kabla handaki halijainuka, pamoja na ukaguzi kwamba njia inastahimili muunganisho mpya. Ithibitishe kwa utafutaji wa njia kwa anwani ya relay badala ya kudhani mpangilio ulikuwa sahihi.
Tazamia pia kwamba mkusanyiko huu utakuwa wa polepole na dhaifu kuliko muunganisho wa moja kwa moja, kwa sababu sasa kuna usafirishaji mbili zilizopangwa na nukta nyingine ya mwisho ya kudumisha. Ni njia ya kuvuka mpaka wa mtandao, si mbinu ya utendaji.
Funga msikilizaji ukimaliza
Simamisha kikao cha SSH wakati handaki haihitajiki tena, na thibitisha kwamba bandari ya ndani imeachiliwa. Upelekaji uliosahaulika huweka njia iliyothibitishwa wazi kwenye mashine ambayo inaweza kushirikiwa.
Pitia pia maeneo ya upelekaji yaliyoruhusiwa ya relay, kwa sababu usanidi unaoruhusu hubadilisha akaunti yoyote iliyoathirika kuwa tegemeo la jumla. Andika bandari, relay na lengwa pamoja, ili mtu anayefuata ajue upelekaji ulikuwa wa nini na kama bado umeidhinishwa.