Daawashada tunnel-ka oo kaca iyo macmiilka oo ping garaynaya dhinaca kale, ka dibna ciwaan guud oo ka tirsan gadaasha VPN ayaa ka jawaaba meel kale, ama ma jawaabo gebi ahaanba. Calaamaddan badanaa wax xiriir ah lama laha sirta ama shahaadooyinka. Calaamadda ay bixiyaha tilmaamay waxaa loo keenaa sida waddo IP ah, oo in lagu qaado OpenVPN waxay ka dhigan tahay in wadadaas dib loo abuuro laba heerar oo ciwaanka isha lagu ilaaliyo wadada soo noqoshada. WAN-ka oo la isku xiro looma baahna, oo ciwaanka oo interface lagu daro ma abuurto wadada sare.

Calaamadda marka hore waa in loola tilmaamaa adiga

Weydii bixiyaha sida loo keeno block-ka. Calaamad loo tilmaamay ciwaanka ugu weyn ee serverkaaga waa wax ka duwan ciwaannada uu bixiyaha filayo inuu si toos ah uga gaaro qaybta WAN. Qaabka koowaad kaliya ayaa la shaqeeya nashqadan halkan.

Haddii bixiyaha u tilmaamo 198.51.100.64/28 serverkaaga gelitaanka, xirmooyinka tiradaas waxay yimaadaan serverka oo halkaas ku joogsadaan haddii aadan u gudbin. Haddii bixiyaha beddelkiisa ku xiro tirada uplink-kaaga, serverku waa inuu ARP uga jawaabo, taas oo ah dhibaato kale.

Tijaabi qaabka keenista ka hor inta aanad taaban OpenVPN: dibadda ka ping ciwaan ku jira block-ka oo eeg interface-ka qaata. Haddii waxba iman, wax konfigureshin tunnel ah ma caawinayso. Haddii ciwaanku si toos ah uga jawaabo WAN-ka, bixiyaha waxa uu isku xiraa halkii uu tilmaami lahaa, oo nashqada hoose ma khuseeyso.

Laba heerar oo tilmaamid: wadada kernel-ka iyo iroute

OpenVPN wuxuu u baahan yahay calaamadda laba meelood. Kernel-ku waa inuu ogaadaa in calaamaddu ay leedahay qalabka tunnel-ka, si xirmooyinka la gudbiyo ay u galaan OpenVPN halkii ay ka gali lahaayeen wadada caadiga ah. OpenVPN sidoo kale waa inuu ogaadaa macmiilka la xaqiijiyay ee leh calaamadda, taas oo ah gelinta iroute ee buugga gaarka ah macmiilka.

Wadada dhinaca serverka waxay u egtahay sidan, iyadoo calaamadda iyo mask-ku ay tahay inay la jaanqaadaan qoondaynta:

ip route add 198.51.100.64/28 dev tun0

Konfigureshinka gaarka ah macmiilka wuxuu qoondaa lahaanshaha. Ku rid faylka CCD ee loogu magac daray magaca guud ee shahaadada macmiilka, oo xaqiiji in buuggaas yahay kan serverku runtii akhriyo:

iroute 198.51.100.64 255.255.255.240

Dukumeentiga OpenVPN ee ku saabsan shabakadaha la tilmaamay wuxuu sharraxayaa labada heerar iyo sababta ay u kala gaar yihiin. Wadada kernel-ka oo aan iroute lahayn waxay xirmooyin u dirtaa tunnel-ka iyagoo aan lahayn milkiile, oo OpenVPN wuu tuuraa. iroute oo aan lahayn wadada kernel-ka waxay xirmooyinka ku reebtaa wadada caadiga ah ee serverka. Labada khaladba waxay ka muuqdaan dhinaca macmiilka sida tunnel jaban.

Halka ciwaanka adeeggu ku nool yahay

Calaamadda la wakiishay ma aha isla wax la mid ah ciwaannada tunnel-ka laftiisa. Lambar xiriirka ka soo qaado meel bannaan oo gaar ah haddii aad rabto, oo dhig ciwaanka adeegga guud halka adeeggu runtii ka shaqeeyo.

Macmiil Linux oo adeegga gudaha ku dhammeeya, hal ciwaan host ah ayaa ku filan:

ip address add 198.51.100.70/32 dev lo

Haddii calaamadda loo tilmaamo edeg VM ama LAN kale, beddelkiisa ku habee wadadaas hoose iyo wadada soo noqoshada. Ciwaan kasta oo block-ka ku jira in loo qoondeeyo macmiilka VPN looma baahna oo hadhow khilaaf ayay abuurtaa.

Ilaali isha guud ee wadada soo noqoshada

Jawaabta ka timaadda calaamadda la wakiishay waa inay tunnel-ka ka baxdo oo ay gaarto wadada bixiyaha. Haddii host-ka fog uu ku diraa ISP-ga u gaar ah, ciwaanka ishu wuxuu u eg yahay mid been abuur ah, oo bixiyaha ama meesha loo socdo way tuuraan. Xalku waa xeer ku saleysan isha ama shax tilmaamid oo gaar ah, ma aha NAT ballaaran. Iyada la'aanteed adeeggu wuxuu ka shaqeeyaa dhinaca tunnel-ka oo wuu ku guuldareystaa meel kasta oo kale.

Serverka gelitaanka, xeer masquerade ballaaran ayaa ah dembiilaha caadiga ah. Wuxuu dib u qoraa isha guud oo u beddelaa ciwaanka ugu weyn ee serverka, oo macmiilku waligiis ma arko tan dhabta ah:

iptables -t nat -S POSTROUTING

Ku xaddid NAT macmiiliyada VPN gaar ah ee u baahan, oo ka tag calaamadda la wakiishay iyada oo aan la tarjumin. Kadibna xaqiiji in serverku calaamadda gudbiyo, maxaa yeelay silsilad gudbin oo diidmo caadi ah leh ayaa si aamusnaan ah u tuurta.

Xaqiiji labada jiho ka hor inta aanad isku hallayn

Xaqiijintu waa afar indho-indheyn, ma aha mid. Xaqiiji in wadada bixiyaha timaado, kernel-ku calaamadda uu u diro tunnel-ka, OpenVPN uu u nisbeeyo macmiilka saxda ah, iyo jawaabtu ay ku soo noqoto isha guud oo aan dhaawacmin. Indho-indheyn kastaa waxay leedahay amarkeeda, marka guuldarradu waxay tilmaantaa lakab ma aha nashqada oo dhan. Ku socodsii amarradaas isla nidaamkaas ka dib isbeddel kasta oo konfigureshin ah.

Weydii kernel-ka wadada ay qaadato ciwaan la wakiishay, oo daawashada tunnel-ka inta codsi socdo:

ip route get 198.51.100.70
sudo tcpdump -ni tun0 host 198.51.100.70

Shaandhaynta wadada gadaal waxay burin kartaa waddo sax ah. Hubi dejinta wax ku oolka ah tunnel-ka iyo uplink-ka, oo xusuuso in hab adag uu diido taraafikada ishiisu aan la jaanqaadin interface-ka uu ka soo galay:

sysctl net.ipv4.conf.tun0.rp_filter net.ipv4.conf.eth0.rp_filter

Ugu dambeyntii, tijaabi xaaladda guuldarrada. Jooji tunnel-ka oo xaqiiji in calaamadda guud aysan ka soo daadan uplink-ka caadiga ah. Soo celinta VPN waa inay adeegga soo celiso iyada oo aan ballaarin port-yada uu host-ku bandhigo.

Maqaallo la xiriira