Ilaalinta wareegga caadiga ah waa waddo martigeliye: u dir taraafikada ciwaanka dadweynaha ee serverka VPN dhinaca uplink si kulanka sirta ah uusan waligiis u gelin tunnel-kiisa. Taasi waxay shaqaysaa ilaa daqiiqada aad sidoo kale rabto inaad tunnel-ka ku gaarto adeeg web ah isla serverkaas, sababtoo ah ka-dhaafista waxay ku xidhan tahay meesha loo socdo, meesha loo socdona waa isku mid. Bixitaanku waa inaad joojiso kala-soocidda meesha loo socdo oo aad bilowdo kala-soocidda iyadoo lagu saleynayo socket-ka soo diray baakadda.

Ka bilow labada qulqul ee aad rabto inaad kala soocdo

Hal qulqul waa gaadiidka sirta ah ee OpenVPN laftiisa, kaas oo ay tahay inuu ka baxo uplink-ka, haddii kale tunnel-ku wuxuu qaadi lahaa xiriirkiisa dibadda. Kan kale waa codsi HTTPS caadi ah oo u socda isla ciwaanka dadweynaha, kaas oo aad rabto inuu tunnel-ka dhexdiisa ku jiro si uu adeegga uga gaaro isha tunnel-ka. Isku meel loo socdo, marar badan isku lambar deked, waddo kala duwan oo loo baahan yahay.

Sharaxaaddan, ka soo qaad macmiil ku yaal 10.90.0.10 iyada oo loo marayo tun1, ciwaan dadweyne oo serverka ah 198.51.100.25, iyo shaxda ugu weyn oo aan la taaban oo waddadeeda caadiga ah ay u jeeddo uplink-ka caadiga ah. Dhinaca serverkuna waa inuu sidoo kale aqbalo adeegga web ee waddada gudaha oo uu taraafikada ku celiyo isha tunnel-ka; baakad u diridda ciwaan dadweyne ma burinayso dhegeystaha ama siyaasadda firewall-ka serverka.

Ka hor intaadan wax beddelin, diiwaangeli sharciyada hadda jira ee martigeliyaha oo dooro qiyam aan cid kale isticmaalin: calaamad, lambar shax iyo saddex mudnaan sharci. Hayso waddo dib ugu noqota mishiinka oo aan marayn xiriirkan, sababtoo ah khalad halkan ah wuxuu kaa qaadayaa gelitaankaaga fog, ma aha oo kaliya inuu jebiyo tab browser.

Calaamadee socket-ka qaada gal-daboolka

Habaynta macmiilka waxay heshaa calaamad loogu talagalay baakadihiisa sirta ah ee baxa oo ay joojisaa inay iyadu rakibto waddooyin, si siyaasadda beddelka ay tahay waxa kaliya ee go'aamiya waddooyinka:

mark 42
route-noexec
disable-dco

Tobanle 42 waa lix iyo tobanle 0x2a, oo qaabka lix iyo tobanle ayaa ah kan sharciyada hageynta ay la macaamilaan. Tixraaca link-options wuxuu mark u sharraxayaa inuu khuseeyo baakadaha sirta ah ee baxa Linux, taas oo si sax ah u tahay socket-ka aad u baahan tahay inaad maamusho waddadiisa. Daminta offload-ka kanaalka xogta waxay tusaalahan ku haysaa waddada booska isticmaalaha, halkaas oo habdhaqanka calaamaddu yahay kan la sharraxay.

route-noexec waxay joojisaa ku-daridda iyo ka-saaridda waddooyinka si otomaatig ah ee OpenVPN. Ma rakibto wax beddelkood ah, sidaas darteed laga bilaabo daqiiqaddan milkiilaha waddooyinku waa inuu ilaaliyo waddo kasta oo tunnel-ku u baahan yahay. Haddii meel gaar ah oo loo socdo ay lumo isbeddelka ka dib, taas waa siyaasadda beddelka oo maqan, ma aha cillad ku jirta calaamadda.

Ha hayn waddo martigeliye oo ku jirta shaxda ugu weyn oo loogu talagalay 198.51.100.25 inta aad tan samaynayso. Waddo sidan oo kale ah waxay dib u soo celinaysaa si sax ah ka-dhaafista uu naqshaddu isku dayayso inuu yareeyo, waxayna ku guulaysan doontaa qulqulka HTTPS ka hor inta aan mid ka mid ah siyaasadaha hoose la weydiin.

U dir wax kasta oo kale shaxda tunnel-ka

Marka interface-ka tunnel-ku jiro oo uu haysto ciwaankiisa, siyaasaddu waxay u egtahay sidan:

ip -4 route add default dev tun1 src 10.90.0.10 table 47100
ip -4 rule add priority 20000 lookup main suppress_prefixlength 0
ip -4 rule add priority 20001 not fwmark 0x2a lookup 47100
ip -4 rule add priority 20002 not fwmark 0x2a unreachable

Sharciga koowaad wuxuu muuqdaan ka dhigaa waddooyinka gaarka ah ee martigeliyaha, oo ay ku jirto shabakad maxalli ah oo la ansixiyay, isla markaana wuxuu shaxda ugu weyn waddadeeda caadiga ah ka dhigaa mid aan la arkin raadintan. Farqigaasi waa muhiim: xakamaynta caadiga ah ma aha isku mid la ignooridda shaxda, oo ka-dhaafisyada maxalliga ah ee aad weli u baahan tahay waxay sii noolaadaan sababtaas awgeed. Akhri ka-dhaafisyadaas mid mid, halkii aad ka malayn lahayd natiijadu waa beddelka degdegga ee guud.

Taraafikada aan calaamadda lahayn ayaa markaas ku dhacda shaxda tunnel-ka, qaata isha tunnel-ka oo ka baxda VPN-ka. Taraafikada calaamadeysan waxay ku guuldareysataa imtixaanka fwmark labada sharci ee xiga waxayna u gudubtaa raadinta ugu weyn ee caadiga ah ee hoose ee liiska, halkaas oo caadiga uplink-ka uu weli yaal. Sharciga ugu dambeeya ee unreachable waa kan ka hortagaya qulqul aan calaamad lahayn inuu si aamusan dib ugu dhaeto uplink-ka marka waddada tunnel-ku maqan tahay. Doorashada waa calaamadda bilow ilaa dhammaad, ciwaanka loo socdona waligiis ma galo go'aanka.

Hay ilaalintaas meesheeda inta lagu jiro go'itaanka xiriirka, kuna rakib siyaasadda inta kale halkii gacanta. Sharci ku luma interface-ka ma aha siyaasad, waa shil. Tirtiridda siyaasadda marka tunnel-ku dhaco waxay beddeshaa qaabka guuldareysta laga bilaabo “la xannibay” ilaa “daatay”, waddo tunnel oo duugoobay oo hadhow dhacdaana waa dhibaato aad uga fudud in la sharraxo marka loo eego taraafik ka baxay interface-ka khaldan.

U ogolow waddada dib u noqota inay aragto isla calaamadda

Calaamadaha baxa waa kala bar kaliya oo habka, waana qaybta ay soo saarista badankoodu ka tagaan. Jawaabaha kulanka sirta ah waxay yimaadaan uplink-ka waxayna hoos yimaadaan xaqiijinta waddada dib u noqota, taas oo weydiisa haddii ishu ay dib u mari lahayd isla waddadii ay ka timid. Caawimaad la'aan, raadintaas waxay ku dabaqdaa siyaasaddaada tunnel-ka ee aan calaamadda lahayn waxayna go'aansataa in baakaddu ku jirto interface-ka khaldan.

Sixitaanku waxaa iska leh milkiilaha firewall-ka: kaydi calaamadda xiriirka baxa, ku soo celi baakadaha soo galaya ee u dhigma oo shid maaraynta calaamadda isha lagu xaqiijiyay ee waddada la xiriirta. OpenVPN oo dhigta calaamad socket ma sameyso mid ka mid ah saddexdaas, oo cunto karis kaliya liisida ikhtiyaarada macmiilka ma dhammaystirna. Weydii is-dhexgalkaas qoraal ahaan, sababtoo ah waa qaybta ugu muuqashada yar ee naqshadda iyo tan ugu fudud in lagu lumo dib u dhiska.

Hubinta dabacsan ee waddada dib u noqota sidoo kale ma aha beddel. Habka dabacsan wuxuu weli u baahan yahay waddo u jirta isha, ilaalinta unreachable ee aad ku dartayna waxay si ula kac ah uga saartaa mid raadinta aan calaamadda lahayn. Dhammaystir oo dib u eeg is-dhexgalka calaamadda xiriirka ka hor intaadan ku tiirsanaan naqshaddan, oo u qaado shaandhaynta martigeliyaha su'aal gooni ah: calaamaddu waa signal hageyn, ma aha fasax. Haddii is-dhexgalku maqan yahay, calaamaddu waa kulan samaysma oo hadhow aamusa isla marka jawaabuhu bilaabaan inay yimaadaan.

Ku caddee laba raadin waddo

Isbarbar dhig waxa kernel-ku go'aamiyo labada xaaladood, oo akhri beeraha dev iyo src halkii aad ka akhrin lahayd xaaladda bixitaanka:

ip -4 route get 198.51.100.25
ip -4 route get 198.51.100.25 mark 0x2a

Raadinta koowaad waa inay ku xalliso tun1 iyadoo leh isha tunnel-ka, tan labaadna uplink-ka. Kuwani waa raadinno sintetik ah, sidaas darteed waxay caddeeyaan siyaasadda ee ma aha habka socda: si gooni ah u xaqiiji waddada gaadiidka dhabta ah ee macmiilka socda, ka dibna samee codsi HTTPS dhab ah iyadoo xaqiijinta shahaadada ay shidantahay.

Qor waxa naqshaddu aanay daboolin ka hor intaadan ku dhawaaqin inuu dhammaaday. DNS, IPv6 iyo wareegga nolosha ee sharciyadu mid kastaa wuxuu u baahan yahay go'aan u gaar ah, oo kani waa tusaale hageyn IPv4, ma aha habayn sir ah oo buuxda. Qiimihiisu waa doorashada: gal-daboolku wuxuu helaa ka-dhaafista uplink-ka, adeeg caadi ah oo isla ciwaanka ku suganna ma behdo inuu dhaxlo.

Maqaallo la xiriira