Spyrðu þrjá verkfræðinga hvernig komast má í innri þjónustu og þú færð þrjár hannanir: vefmilliþjón, SSH-göng eða fullt VPN. Öll þrjú geta gert fjarlæga þjónustu aðgengilega, og öll þrjú geta látið umferð líta út eins og hún komi annars staðar frá. Munurinn kemur í ljós síðar, þegar samskiptareglurnar í notkun eru ekki þær sem valið tæki gerir ráð fyrir. Hönnun sem stenst skjóta vafrakönnun bregst oft á því forriti sem olli beiðninni.

Ákveddu út frá tveimur staðreyndum: hvaða samskiptareglur verða að fara í gegn, og hver getur leyst viðkomandi nöfn. Allt annað er smekksatriði.

Milliþjónn færir aðeins það sem hann skilur

Vefmilliþjónn greinir þær samskiptareglur sem hann var byggður fyrir. Biðlarinn færir honum beiðni og hann færir beiðnina áfram, svo forrit án milliþjónsstillingar tekur alls ekki þátt. Fyrir HTTPS þarf biðlarinn ógagnsæja rás, sem milliþjónninn veitir í gegnum CONNECT í stað þess að lesa beiðnina.

SSH kvik framsending opnar staðbundið gátt sem talar SOCKS, og sú gátt sendir TCP-strauma á hvaða áfangastað sem biðlarinn nefnir. Samskiptareglur byggðar á TCP virka yfirleitt í gegnum hana. UDP ekki, nema tæki bæti stuðningi við beint. Staðbundin framsending er enn þrengri: ein staðbundin gátt varpað á eitt fast hýsil og gátt, sem þjónar einni þekktri þjónustu og engu öðru.

ssh -D 1080 user@bastion
ssh -L 8443:fileserver.internal:443 user@bastion

VPN flytur pakka. Allt sem biðlarinn beinir inn í göngin fer í gegnum þau, þar á meðal UDP og ICMP, þess vegna hentar það netkröfu en ekki einni tengingu.

Einhver verður að leysa nafnið

Þegar marknafnið er aðeins til í DNS fjarnetsins verður vélin sem framkvæmir uppflettinguna að sjá það svæði. Vefmilliþjónn framkvæmir uppflettinguna sjálfur, svo innra nafn virkar í gegnum hann jafnvel þótt fartölvan geti alls ekki leyst nafnið. SOCKS getur hagað sér eins, en aðeins ef biðlarinn sendir nafnið áfram í stað þess að tengjast vistfangi sem hann hefur þegar leyst. Það val er í biðlinum, ekki í þjóninum.

curl sýnir aðskilnaðinn skýrt: eitt flagg sendir hýsilnafnið til milliþjónsins, annað leysir það fyrst staðbundið. Við staðbundna leysingu bregst nafn sem er aðeins innra áður en nokkur göng eru snert, og villan kennir milliþjóninum um það sem í raun var DNS-ákvörðun.

VPN tekur þriðju leiðina með því að setja einkaleysinn og leitarsvæðið við hlið slóðanna. Það er þægilegt og skapar þekkta tálsýn: slóð sem er til með leysi sem svarar ekki lítur nákvæmlega út eins og dauð göng, þótt pakkar nái til hinna hliðarinnar.

Þegar netið leyfir aðeins einn útgang

Mörg fyrirtækjanet leyfa útleiðandi tengingar aðeins í gegnum auðkenndan vefmilliþjón. OpenVPN og SSH er hægt að koma báðum í gang þar, hið fyrra með því að gera göng úr eigin flutningi í gegnum milliþjóninn og hið síðara með milliþjónsskipun sem keyrir litla CONNECT-aðstoð.

Göng byggð á TCP lifa af þessa takmörkun, og UDP-byggt VPN ekki, sem útskýrir mjög margar stillingar sem virka heima og bregðast á skrifstofu. Annar kostnaður er auðveldur að missa af: TCP-göng sem flutt eru innan TCP-tengingar í gegnum milliþjón hafa nú tvö lög sem endursenda, og undir tapi stöðvast þetta par á þann hátt sem ekkert lag framleiðir eitt sér.

Keðja milliliða er önnur spurning en að velja lag. Að bæta við öðrum milliþjóni eða Tor breytir því hver fylgist með hverju, og staða í keðjunni ræður því hvaða stökk sér dulritaðan texta.

Röðin skiptir meira máli en fjöldi stökkva. Ytra stökk fylgist með dulrituðum straumi á meðan innra stökk sér venjulegan texta sem hann flytur, svo keðja er aðeins eins persónuleg og minnst vandamaða hlekkur hennar. Að blanda samskiptareglum milli stökka bætir það ekki sjálfkrafa. Það gerir bilunarhami oft erfiðari í hugsun.

Fölsuð vistfang er ekki einn af valkostunum

Að búa til pakka með heimildarfangi einhvers annars nær engu gagnlegu: svör ferðast til raunverulegs eiganda, og flest net henda umferðinni beint. Milliliður er nauðsynlegur einmitt vegna þess að ekki er hægt að finna upp heimildina, og það er heiðarleg rökstuðningur allra þriggja hannana.

Það takmarkar líka hvað hver þeirra má fullyrða. Að virðast eiga uppruna í tilteknu vistfangi er spurning um hvar það vistfang er löglega úthlutað og hver má beina því, ekki um hvaða tæki getur falsað haus. Ef hönnun gerir ráð fyrir öðru bregst forsenda hjá fyrsta veitandanum sem síar hana. Skrifaðu forsenduna svo bilunin sé þekkjanleg þegar hún kemur.

Ákveddu eftir samskiptareglum og nöfnum

Veldu milliþjón þegar einn vefbiðlari þarf eina vefþjónustu og hefur milliþjónsstillingar. Veldu SSH-göng þegar handfylli þekktra TCP-þjónusta nægir og SSH-aðgangur er þegar til. Veldu VPN þegar nokkur forrit, umferð sem er ekki TCP, einka-DNS eða endurnýtanleg slóð eru hluti kröfunnar.

Staðfestu síðan með raunverulega biðlinum og raunverulega nafninu. Að hlaða síðu í gegnum milliþjón kennir þér ekkert um UDP, og að koma einu tæki í gang yfir SOCKS kennir þér ekkert um leysi kerfisins. Lestu hvaða staðbundna vistfang ferlið batt og hvaða leysir svaraði. Það er munurinn á slóð sem virkar og slóð sem virkaði einu sinni fyrir tilviljun.

Tengdir greinar