Ræstu VPN inni í eigin nafnrými, keyrðu eina forrit þar, og umferð fer samt út um leið hýsilsins. Ekkert er bilað: nafnrýmið stjórnar aðeins ferlum sem fara inn í það, og lekið kom frá ferli sem gerði það aldrei. Viðmót, vistföng, leiðir, reglur eldveggs og sæti eru það sem nafnrýmið á. Skrár, reikningar og þjónustur sem þegar keyra eru það ekki, og þaðan koma flestu óvæntu atvikin.

Hvað nafnrýmið á, og hvar sætið fæðist

Færðu viðmót inn í nafnrými og hýsillinn tapar því; byggðu göng inni og hýsillinn getur ekki séð þau. Þetta er aðferðin að baki VPN sem er bundið nafnrými: tækið og leiðirnar að því lifa í samhengi sem aðeins valdir ferlar komast í. Hýsillinn heldur sjálfgefnu leið sinni, svo allt utan verður ósnortið.

Fyrir WireGuard skiptir samhengið við sköpun jafn miklu og núverandi staðsetning: UDP-sætið er bundið í því nafnrými þar sem viðmótið var búið til, jafnvel eftir að tækið flyst annað. Hvaða leiðartöflu duldu pakkarnir fylgja ræðst af þeim fæðingarstað. Þegar sætið er áfram í samhengi án leiðar að jafningjanum leitar viðmótið og handabandið fer aldrei út. Athugaðu fæðingarstað þess, síðan núverandi staðsetningu.

Hvað nafnrými einangrar ekki

Ekkert hér aðskilur skráarkerfi, reikninga eða leyndarmál, og engin þessara marka birtist vegna þess að þú bjóst til nafnrými. Stilling þáttarans er skrá, svo ferli inni getur enn lesið stillingu sem vísar á þáttara hýsilsins og sent fyrirspurn sína út um þá leið sem það felur í sér. Forrit sem afhendir beiðnina til þegar keyrandi milliliðar eða kerfisþjónustu felur í sér ferli í gjörólíku samhengi. Bæði eru beiðnir sem markinu var aldrei ætlað að svara.

Lausnin er skrá fyrir hvert nafnrými í /etc/netns/<name>/resolv.conf, eða bind mount af undirbúinni skrá, sem vísar á þáttara sem er aðgengilegur að innan. Að breyta /etc/resolv.conf á hýslinum breytir engu sem nafnrýmið sér.

Staðsetning ferla er stjórnunin

Einangrunin sem þú fær er nákvæmlega einangrun þeirra ferla sem þú ræsir inni. Skel sem er ræst í gegnum exec-aðstoð nafnrýmisins, og allt sem hún skapar, verður inni; skjáborðsforrit sem er ræst frá setu hýsilsins ekki. Búðu til samhengið, færðu tækið og sannaðu svo báðar hliðar:

ip netns add vpn1
ip link set wg0 netns vpn1
ip netns exec vpn1 wg show
wg show

Lestu fyrsta wg show að innan úr nafnrýminu og annað frá hýslinum, og búðu þig við að aðeins annað þeirra listi jafningjann. Ef bæði gera það hreyfðist tækið aldrei; ef ekkert gerir það fór það annað. Þegar ræsirinn er þjónustustjóri er einingarskráin það sem á að breyta, ekki flýtileiðin á skjáborðinu. Eining án stillingar nafnrýmis ræsir djöfulinn í samhengi hýsilsins og afnemur hönnunina hljóðlega.

Prófaðu frá samhengi forritsins

Keyrðu athugunina með sama tvíundarforriti og sama notanda og forritið notar, inni í nafnrýminu. Láttu DNS og báðar vistfangafjölskyldur fylgja, því IPv6-leið sem þú hugsaðir aldrei um er algeng útleið. Prófun frá eigin skel sannar bara að skelin þín er einangruð.

Keyrðu síðan sömu athugun á hýslinum og staðfestu að svörin eru mismunandi: gönguvistfang og ætluð útleið inni, leið hýsilsins og útleið skrifstofunnar úti, og þáttarinn eftir nafni. Nefndu nafnrými eftir uppsetningunni frekar en samskiptareglunni, svo hreinsiskrift ruglist ekki á tvö þeirra.

Framsending, bilunastefna og hreinsun

Fyrir hlið skaltu kveikja á framsendingu viljandi og ákveða hvað eigi að gerast þegar göngin falla. Nafnrými hindrar ekki leiðir sem þú setur upp inni, svo varaleið að hýslinum verður notuð ef þú býrð til eina. Það er stefnuákvörðun, og hana ætti að skrifa niður áður en bilun prófar hana.

Skráðu nöfn nafnrýmanna, viðmótin og hver á stillingarnar, svo hreinsun fjarlægi aðeins það sem uppsetningin bjó til. Endurstilling netkerfis hýsilsins við afturköllun breytir hreinsun í bilun. Síðan network_namespaces(7) er stutt og þess virði að lesa áður en þú hannar þá leið.

Tengdir greinar