Laba tikid oo taageero oo u muuqda kuwo aan xiriir lahayn ayaa ugu dambayn wadaaga hal sabab. Midda koowaad, maamule wuxuu rabaa in serverku uu aqbalo xiriiro ka yimaada tunnel-ka oo keliya; midda labaad, isticmaalayaasha VPN waa inay gaaraan hal host gudaha ah oo aan wax dheerayn. Labada siyaasadoodba waxay ku jiraan FORWARD, labadana badanaa waxaa lagu tijaabiyaa INPUT. Natiijadu waxay u egtahay darbi dab ah oo waxay u dhaqantaa sida meel-banaan.

Silsiladdee ayaa ka jawaabta su'aashaada

Baakadaha macmiil VPN uu u diraayo host ku yaal LAN, ama sii socda internet-ka, kernel-ku wuu gudbiyaa oo waxaa lagu qiimeeyaa FORWARD. INPUT iyo OUTPUT waxay kaliya arkaan taraafikada ku dhammaada serverka laftiisa ama ka soo baxa. Sidaas darteed diidmada wax kasta oo aan ku imaan tun0 waxay ilaalisaa dhageystayaasha serverka laftiisa, waxayna sidoo kale joojin doontaa fadhigaaga SSH haddii aan marka hore la ogolaan qulqulka hore u jiray. Waxba kama beddesho halka macaamiisha loo ogol yahay inay tagaan.

Marka hore u magacow su'aasha: yaa gaari kara serverka, ama xaggee macaamiishu tagi karaan. Shabakadaha intooda badan waxay u baahan yihiin labada jawaab, silsilado kala duwan.

Marka hore xaaladda, ka dib ogolaanshaha, ka dib diidmada

Liiska ogolaanshaha wuxuu shaqeeyaa kaliya haddii ogolaanshaha gaarka ah uu ka sarreeyo diidmada guud iyo haddii taraafikada soo noqoshada lagu ogolaado labadaba ka sarreeya. Geli xeerarka meelo cad, kadibna ku soo saar silsiladda iptables -S FORWARD si nidaamku u muuqdo halkii la malayn lahaa.

POOL=10.99.0.0/24
iptables -I FORWARD 1 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -I FORWARD 2 -s "$POOL" -d 172.31.20.15 -p tcp -m multiport --dports 443,3389 -j ACCEPT
iptables -I FORWARD 3 -s "$POOL" -j REJECT

Laba faahfaahin ayaa go'aamiya haddii tani ay ka adkaysan doonto la kulanka taraafikada dhabta ah. La'aanteed xeerka xaaladda, jawaabaha xiriirada aad hadda ogolaatay ayaa laftooda lagu qiimeeyaa diidmada oo la tuuraa. Xeerka LOG oo aan xad lahayn ayaa buuxin kara qayb yar marka ugu horreysa ee baaritaan ku dhaco, sidaas darteed ku dar -m limit --limit 10/min ka hor intaadan sii wadin diiwaangelinta. REJECT isla markiiba wuxuu soo celiyaa qalad, taas oo saaxiibtinimo badan inta aad hagaajinayso liiska; DROP si aamusan ayuu u tuuraa, sidaas darteed khalad kastaa wuxuu u muuqdaa waqti dhammaad. Si ula kac ah mid u dooro oo doorashada ku qor diiwaanka isbeddelka.

Gudbinta iyo NAT waa inay horey u shaqeeyaan

Shaandhayntu ma caddayn karto in jidku jiro. Marka hore xaqiiji in kernelku gudbiyo haba yaraatee, oo dejintaas ka dhig mid joogto ah halkii ay ahaan lahayd amarka shell hal mar ah. Shaandhuhu waa lakabka ugu dambeeya, ma aha kan ugu horreeya.

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -s "$POOL" -o eth0 -j MASQUERADE

Halka maskaradku ku habboon yahay waxay ku xiran tahay halka macaamiishu ka baxaan. Haddii ay ka baxaan tunnel-ka oo u gudbaan shabakad fog, xeerka NAT waxaa la dhigaa interface-kaas ee ma aha interface-ka WAN. Kadib fiiri tirooyinka: haddii tirooyinka POSTROUTING aanay waligood dhaqaaqin halka tirada ogolaanshaha FORWARD ay korodho, jidka soo noqoshada wuu go'an yahay shaandhuhuna wuu fiican yahay. Akhrintaas waxay keydisaa galabnimo dib u qoris xeerar aan waligood dhibaato ahayn.

Xayiraadda iimaylka waxay ku taal silsilad ka sii fog

Xannibaadda port 25 ee INPUT waxay joojisaa kaliya iimaylka loo diray serverka VPN. Macmiil la jabsaday oo iimayl ka diraya tunnel-ka waa la gudbiyaa, sidaas darteed xannibaaddu waa inay ku taal FORWARD agteeda 465 iyo 587. Haddii hal barnaamij si sharci ah u gudbiyo iimaylka, dhig goobtiisa iyo port-kiisa xeerkaas ka sarreeya.

iptables -I FORWARD 2 -s "$POOL" -p tcp -m multiport --dports 25,465,587 -j REJECT

U daa tirooyinka diidmada inay shaqeeyaan toddobaad ka hor intaadan wax kale adkayn. Tirada joojisa kor u kaca waa qulqulka sharci ah ee aad hadda jabisay.

Dib u akhri, kadibna ka caddee macmiil

Akhri xeerarka sida kernelku u soo sheegto, ma aha sida qoraalkaagu u qoray. Ku bilow iptables -S FORWARD, kadibna shaxda NAT iptables -t nat -L POSTROUTING -n -v, kadibna gelitaanka conntrack ee qulqulka aad baadhayso. Hayso amar dib u noqosho ama nadiifin la qorsheeyay inta shaqadu socoto. Wicitaan kastaa wuxuu u baahan yahay -w, haddii kale laba maamule ayaa ku dhacaya qufulka xtables. Midkoodna maahan ikhtiyaari gudaha daaqadda isbeddelka.

Ku dhammee tijaabo ka timid macmiil ku jira kooxda iyo mid ka baxsan. Xeerka kaliya ka shaqeeya mishiinka aad ku qortay maahan siyaasad.

Maqaallo la xiriira