WireGuard gudaha LXC ama VM ku Proxmox: halkee ayuu ku shaqeeyaa?
WireGuard wuxuu ku shaqayn karaa martigeliyaha Proxmox, weel ama VM. Sababaha go'aanka waa lahaanshaha kernel-ka, xakamaynta interface-ka iyo soo kabashada.
WireGuard wuxuu u baahan yahay kernel kaliya oo leh interface-kiisa, xaqiiqadaasna waxay xallinaysaa inta badan doodda meelaynta Proxmox ka hor inta aan waxqabadku soo gelin wada hadalka. Weelka LXC waa aragtida booska magacyada ee kernel-ka martigeliyaha, halka VM uu boot-gareeyo kan u gaar ah. Marka su'aasha faa'iidada leh ma aha tan doorasho ka fudud, laakiin tan kernel-ka aad diyaar u tahay inaad beddesho iyo waddada soo kabashada ee aad la noolaan karto. Ka jawaab taas, oo doorashada martigeliyaha, weelka ama VM badanaa iskeed ayaa isu dhigta.
Martida LXC waxay ka shaqaysaa gudaha kernel-ka martigeliyaha
Ku rakibidda wireguard-tools weelka gudihiisa waxay ku siinaysaa barnaamijka xakamaynta, ma aha kernel gaar ah. Interface-ka wg0 ee aad abuurto waxaa lagu diiwaangeliyaa stack-ga shabakadda martigeliyaha wuxuuna ka muuqdaa liiska module-ka martigeliyaha. Taas ayaa sabab u ah in weelku uu dhammaan baaritaannada baakadaha ka gudbi karo oo weli ku guuldareysto amarka ugu horreeya wg marka kernel-ka martigeliyaha uu ka maqan yahay module-ka. Iyo tixraaca weelasha Proxmox wuxuu diiwaangelinayaa qaabkaas kernel-ka la wadaago, oo ay la socdaan xuduudaha booska magacyada iyo mudnaanta ee aad ku dhex shaqaynayso.
Awooddu waa caqabadda labaad. Kor u qaadista interface iyo ku xidhista cinwaanno waxay u baahan tahay xuquuqda maamulka shabakadda gudaha booska magacyada ee iska leh, iyo weel aan mudnaan lahayn wuxuu xuquuqdaas ku sawiraa booska magacyada isticmaalahiisa halkii uu si toos ah u hayn lahaa. Weligaa ha u gaarin mudnaan buuxda jawaabta ugu horreysa; eeg waxa dhab ahaan laga doonayo weelka, ka dibna sii taas.
Kernel-ka martigeliyaha sidoo kale waa ku-tiirsanaan la wadaago. Cusboonaysiinta kernel-ka Proxmox waxay beddeshaa hirgelinta WireGuard hoosta weel kasta isku mar, taas oo ku habboon ilaa cusboonaysiin iyo filashooyinka weel aysan isku raacsanayn.
Martigeliye, weel, VM: waxa dhab ahaan leh meelaynta kasta
Meelaynta martigeliyaha waxay VPN-ga dhigtaa shabakadda hypervisor-ka laftiisa. Waddooyinka, xeerarka firewall-ka iyo tunnel-ku waxay noqdaan qayb ka mid ah soo kabashada martigeliyaha, khalad halkaas ka dhacaana wuxuu qaadan karaa interface-ka maamulka. Taas waa la aqbali karaa isugeynta kaabayaasha martigeliyaha aad console-ka ku gaarto, wayna xanuun badan tahay mishiinka fog ee aan lahayn gelitaan band-ka dibadiisa.
Weelku wuxuu adeegga ku hayaa baakadaysan oo dib loo bilaabi karo isagoo weli amaahanay kernel-ka martigeliyaha. Wuxuu ku habboon yahay adeeg si ula kac ah kernel la wadaago wuxuuna ku siinayaa unug yar oo dib loo dhiso. Ma siinayo kernel madaxbannaan, marka wax kasta oo u baahan dhismo module gaar ah wuxuu ka fogaanayaa doorashadan.
| Placement | Kernel owner | Typical failure mode |
|---|---|---|
| Proxmox host | Hypervisor | A routing change breaks host management access |
| LXC container | Host kernel, container namespace | Missing capability or missing module at wg0 creation |
| Virtual machine | Guest kernel | Extra maintenance and a second patch cycle |
VM waxay ku kacdaa xusuus badan iyo nidaam kale oo la patch-gareeyo, beddelkeedana tunnel-ku wuxuu helaa kernel u gaar ah, shaxda waddooyinka u gaar ah iyo xad snapshot. Marka VPN-ku yahay waxa aad dib u celiso isbeddel xun ka dib, snapshot-kaas waa u qalmaa culayska dheeraadka ah.
Saddex shuruudood oo adiga kaa dooranaya
Haddii tunnel-ku u baahan yahay nooc kernel ama sifo WireGuard ah oo martigeliyaha Proxmox aanu bixin, halkan joogso oo isticmaal VM. Kuma rakibi karto kernel cusub weelka gudihiisa, mana aha inaad beddesho kernel-ka hypervisor-ka si aad u qanciso hal marti.
Haddii tunnel-ku yahay albaabka goobta ee prefix-yada LAN dhabta ah, weydii yaa hore u leh waddada soo noqoshada. Weelku wuxuu waddooyin karaa taraafikada, laakiin interface-yadiisu waxay fadhiyaan stack-ga martigeliyaha, marka martigeliyuhu wuxuu aakhirka qaataa qayb ka mid ah qaabeynta, ha ahaato inaad qorsheysay iyo in kale. Meelaynta martigeliyaha waa daacad arrintan; meelaynta weelka inta badan ma aha.
Ka dib miisaan gacan-ka-hadalka saameynta khalad. Dib u bilaabista weelku waa jaban, soo celinta snapshot VM waa la saadaalin karaa, halka hagaajinta shabakadda martigeliyaha ay u baahan karto gelitaan jidh ama console. Doorashada saxda ah waa tan ugu xun ee aad dhab ahaan ku soo kaban karto saacadda ay dhacdo.
Su'aasha afraad marar dhif ah ma aha go'aan, laakiin waa mudan in la yidhaahdo: ma u baahan tahay wax kale oo martigeliyaha ah inuu arko interface-ka tunnel-ka? Haddii haa, meelaynta martigeliyaha ama weelku waxay ku hayaan aragtidaas gudaha, halka VM uu kugu qasbo inaad u waddooyiso martida iyo martigeliyaha dhexdooda.
Caddee meelaynta ka hor inta aadan taraafikada marin
Ka dib rakibidda, xaqiiji kernel-ka dhab ahaan u adeegaya interface-ka iyo haddii weelka la siiyay awood ku filan inuu hayo:
$ pct config 101 | grep -E 'unprivileged|features'
unprivileged: 1
$ pct exec 101 -- wg show
interface: wg0
listening port: 51820
$ pct exec 101 -- ip -4 addr show wg0
inet 10.60.0.2/24 scope global wg0
Ka dib hubi dhinaca gudbinta martigeliyaha, sababtoo ah gacan-qaadid keligeed waxay caddeynaysaa oo keliya in tunnel-ku taagan yahay. Isticmaal ip route get cinwaanka macmiilka oo xaqiiji in boodhka xiga iyo interface-ku ay la jaanqaadaan naqshadda, iyo in waddada soo noqoshada ay ka jirto dhinaca fog.
Ka tag hirgelinta iyada oo leh milkiile qoran: kernelkee ayaa qaada hirgelinta, booskee magacyada ayaa haya interface-ka, iyo prefix-yadee ayaa albaabka loo ogolaaday inuu gudbiyo. Jumladaas waxay ka hortagtaa shilal badan marka la barbardhigo saddexda meelaynta.