Þú þarft að ákveða hversu miklum vélbúnaði VPN-rannsóknarstofan þín á skilið. Beint VM hlið á milli tveggja VirtualBox-hluta endurgerir vistfangafersluna, endurkomuleiðina og stöðu eldveggjarins sem raunverulegur biðlari situr bak við. Einn hluti fyrir hýsilinn eingöngu gefur þér eina stýrða hurð og ekkert annað. Hliðarútgáfan kostar þrjá gesti og beiningartöflu sem þú viðheldur; útgáfan fyrir hýsilinn eingöngu kostar einn gest og eina stefnu. Þrjár spurningar aðgreina þær, og sú þriðja ræður því hvort prófið þitt getur yfirhöfuð staðist.

Svaraðu þremur spurningum áður en þú klónar nokkuð

Byrjaðu á því sem VPN-þjónninn verður að fylgjast með. Ef þjónninn verður að sjá upprunavistfang sem er ekki gestsins í prófinu, verður eitthvað að þýða á milli þeirra, og það eitthvað verður að vera beinir sem þú stýrir. Net fyrir hýsilinn eingöngu gefur hýsilnum millistykki á hluta gestsins, ekki þýðanda. Þegar gesturinn þarf síðan að ná í eitthvað utandyra tengir þú NAT-millistykki, og NAT-vél VirtualBox sjálfrar endurskrifar upprunann án þess að spyrja þig.

Spyrðu næst hvort gesturinn megi ná í nokkuð nema gegnum göngin. Það svar velur innra eða fyrir hýsilinn eingöngu, og það er spurningin sem flestar rannsóknarstofulýsingar sleppa. Að lokum skaltu spyrja hvað verði að gerast þegar göngin falla, því það ræður stefnu frekar en staðfræði, og rannsóknarstofa sem sannar aðeins hamingjusömu leiðina hefur prófað næstum ekkert.

What the test requiresRouted gateway VMHost-only guest
Server sees a translated source addressYes, from your own MASQUERADE ruleNo, VirtualBox NAT does it instead
The guest has exactly one egressYes, while the second adapter faces the tunnelOnly until a NAT adapter is attached
Policy is testable during a tunnel failureRules live in one placeRules live on each guest

Tengdu hlutverkin þrjú með innri netum

Notaðu þrjá gesti og tvo nefnda hluta, og hliðið er eina vélin sem hefur millistykki á báðum:

VBoxManage modifyvm lab-client --nic1 intnet --intnet1 WAN
VBoxManage modifyvm lab-server --nic1 intnet --intnet1 LAN
VBoxManage modifyvm lab-gw --nic1 intnet --intnet1 WAN --nic2 intnet --intnet2 LAN

Það er ekkert sérstakt stofnskref fyrir innra net. Strengurinn í --intnet1 er hlutinn: tvær vélar deila honum aðeins ef nafnið passar nákvæmlega, og ekkert á hýsilnum er tengt honum. Þessi síðasta eiginleiki er ástæðan fyrir því að rannsóknarstofan endurtekur sig hreint, þar sem leiðir hýsilsins, eigin VPN-biðlari hans og eldveggur hans geta ekki náð til gestanna fyrir slysni. Innri hluti hefur heldur engan DHCP-þjón nema þú bætir einum við, svo kyrrstæð vistföng eru stysta leiðin.

Gefðu biðlinum aðeins WAN-vistfang sitt, með sjálfgefnu hliði sem bendir á WAN-vistfang hliðsins. Þjónninn fær LAN-vistfang og notar LAN-vistfang hliðsins sem sjálfgefið hlið. Gestur sem heldur tveimur vistföngum á einum hluta, eða hefur villuleið yfir á hinn hlutann, hefur leið fram hjá beininum, og prófin hér að neðan munu ljúga að þér.

Ég held textaskrá við hlið VM-nanna með fjórum vistföngum og tveimur hlutheiti, og lími hana í hvert skel. Vikum síðar, þegar sniðbreyting brýtur eitthvað, er sú skrá munurinn á að kemba sniðið og að kemba eigið minni.

Veldu innra eða fyrir hýsilinn eingöngu fyrir hlutann sem má ekki leka

Stillingin fyrir hýsilinn eingöngu býr til sýndarmillistykki á hýsilnum sjálfum, venjulega vboxnet0, og gefur hýsilnum vistfang á hluta gestsins. Það er þægilegt fyrir stjórnun og banvænt fyrir einangrunarpróf, því hýsillinn getur nú náð til gestsins beint og hver þjónusta á hýsilhlið verður möguleg leið. Innri stilling hefur alls ekkert hýsilmillistykki. Auðvelt er að rugla stillingunum tveimur í netstillingaspjaldinu, svo athugaðu skjalfesta muninn frekar en merkið (sjá síðuna netupplýsingar VirtualBox).

Fyrir gest sem verður að nota göngin er innra öruggara sjálfgefið gildi, með hliðið sem eina útgönguleið. Ef þú heldur fyrir hýsilinn eingöngu skaltu meðhöndla hýsilmillistykkann sem stjórnunarleið og segja það upphátt: hýsillinn má ná til gestsins, og gesturinn má ekki geta notað hýsilinn sem útgang.

VBoxManage modifyvm lab-client --nic1 hostonly --hostonlyadapter1 vboxnet0

Einangrunin sem þú getur sannað er einangrunin sem þú stilltir. Gestur með eitt innra millistykki, sjálfgefna leið við hliðið og ekkert NAT-millistykki hefur enga leið sem fer fram hjá hliðinu. Gestur með millistykki fyrir hýsilinn eingöngu og NAT-millistykki hefur tvær leiðir, og aðeins ein þeirra er sú sem þú ætlaðir að prófa.

Beindu og þýddu á hliðinu, og láttu það síðan bila lokað

VirtualBox miðlar ekki á milli hluta; gesturinn gerir það. Með VM VPN-þjónsins bak við hliðið skaltu virkja miðlun og þýða umferð biðlarans þegar hún fer út til þjónsins:

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

Með þeirri reglu sér þjónninn LAN-vistfang hliðsins í stað biðlarans, og þannig lítur raunverulegur biðlari bak við NAT rekstraraðila út fyrir höfuðenda netsins. Geymdu sysctl-gildið í /etc/sysctl.d/ og regluna í þeirri eldveggjaþjónustu sem dreifingin notar, annars skilar endurræsing rannsóknarstofunni hljóðlega í beinta en óþýdda stöðu.

Miðlun er ekki heimild. Undir sjálfgefinni FORWARD stefnu ACCEPT fer gestur sem sjálfgefna leið hans bendir á hliðið út um það viðmót sem beiningartaflan velur, með göngum eða án. Ef hliðið hefur líka NAT-millistykki fyrir pakkauppsetningu er það millistykki starfhæfur ódulkóðaður útgangur á þeirri stundu sem göngin falla, og VPN-eingönguprófið þitt var aldrei VPN-eingöngupróf.

Þegar þjónninn er í staðinn fjarlægur og hliðið sjálft lýkur göngunum bendir sama ákvörðun á viðmót ganganna, ekki á netkortið sem nær internetinu:

iptables -P FORWARD DROP
iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Haltu eigin ytri flutningi ganganna og stjórnunarleið utan bands aðskildum frá miðlaðri umferð. Ef eina leiðin til að laga hliðið er gegnum göngin sem þú ert að kemba verður rannsóknarstofan að læsingu. Raðtengd stjórnborð, stjórnunarmillistykki fyrir hýsilinn eingöngu eða skyndimynd af þekktri góðri stöðu eru ódýrari en að endurheimta bilaða beini með höndunum.

Sannprófaðu leiðina frá gestinum, ekki frá hýsilnum

Vinnðu út á við. Staðfestu að biðlarinn nái WAN-vistfangi hliðsins, síðan þjóninum gegnum hliðið, síðan að tenging við VPN-gáttina fari út og komi aftur. Skráning á báðum viðmótum hliðsins sýnir hvort svarið berist og sé hent á endurkomuleiðinni, sem skráning aðeins á biðlaranum getur ekki greint:

tcpdump -ni eth0 udp port 1194
tcpdump -ni tun0 udp port 1194

Sannaðu síðan útganginn. Spurðu frá gestinum vistfangsspeglunarþjónustu hvaða uppruna hún sér og berðu það saman við eigið útgangsvistfang hliðsins; ef svarið passar við vistfang hýsilsins er leið fram hjá göngunum til staðar. Athugaðu hvaða leysir gesturinn notar í raun, og athugaðu IPv6 sérstaklega, því hluti þar sem IPv6 er virkt á meðan göngin bera aðeins IPv4 lekur að hönnun en ekki fyrir slysni.

Að lokum skaltu brjóta það viljandi. Stöðvaðu göngin, eða lokaðu fyrir ytri gátt þeirra, og opnaðu nýja tengingu frá gestinum. Hún verður að mistakast, og ástæðan verður að vera ein sem þú getur nefnt: engin leið, höfnunarregla eða dauður leysir. Endurræstu göngin og staðfestu að gesturinn jafni sig án þess að endurbyggja netið. Ef mesh-VPN eins og Hamachi eða ZeroTier deilir rannsóknarstofunni skaltu muna að brúað millistykki fylgir nafni millistykkisins, ekki mesh-inu, svo brúna verður að endurstilla eftir að biðlarinn setur upp eigið sýndarmillistykki.

VBoxManage list bridgedifs
VBoxManage modifyvm lab-client --bridgeadapter1 <mesh-adapter-name>

Að deila göngum gests með hýsilnum speglar vandamálið. Að beina sjálfgefinni leið hýsilsins að gestinum virkar, og proxy inni í gestinum líka; NAT gegnum hýsilinn ber ekki göng gestsins fyrir umferð sem hýsillinn hóf. Geymdu hlutheiti og eldveggjareglur á einum stað, taktu skyndimynd af virku stöðunni og skráðu upprunavistfangið sem þjónninn fylgdist með. Næsta sniðbreyting kostar þá eina skriftukeyrslu í stað endurbyggðrar rannsóknarstofu.

Tengdir greinar