Magacyadu waxay joojiyaan xallinta isla markii VPN-ku xirmo, halka ping ciwaanka guud weli jawaabayo oo xaaladda firewall-ku wax qalad u eg muujinayso. Siyaasadda waxba kama beddelmin; waxa isbeddelay waa in interface cusub soo baxday, oo diidmada caadiga ah waxay ku daboolaysaa packet-ka koowaad. UFW waxay go'aansataa jihada iyo interface-ka, sidaas darteed qaanuun loo qoray xiriirka wireless-ka waxba kama sheegayo taraafikada ka baxa tunnel-ka. Hagaajintu waa dhowr qaanuun oo cidhiidhi ah oo lagu dabaqo nidaam gaar ah.

Calaamaddu waxay soo baxdaa kaliya marka tunnel-ku kor u kaco

Siyaasadda diidmada caadiga ah waxay samaysaa si sax ah wixii loo sheegay: wax kasta oo aan lahayn qaanuun u dhigma waa la diidayaa, interface kasta oo jira. Tunnel-ku ma jirin markii qaanuunnada la qoray, sidaas darteed midkoodna ma qabsan karo, oo diidmadii had iyo jeer jirtay hadda waxay khuseysaa xallinta magacyada. Taraafikada tooska ah ee ciwaan dhab ah weli wuu shaqeyn karaa marka fasax ballaaran uu daboolo, taasna waa sababta ping-ka resolver guud uu guuleysto halka raadinta magac uu guuldareysto. Farqigu waa qaanuun loogu talagalay interface aan siyaasaddu waligeed arag.

Taasi waxay kaloo sharraxaysaa sababta guuldarradu si nadiif ah u rogmatay: soo deji tunnel-ka oo magacyadu mar kale xalliyaan, sababtoo ah weydiintu waxay ku noqotaa interface qaanuunno leh. Siyaasad kaliya guuldareysata marka tunnel-ku kaco ma aha dhibaato DNS, oo resolver-ka laftiisa hagaajintu halkan wakhti badan ku lumisaa. Akhri liiska interface-ka ka hor intaadan akhrin habaynta resolver-ka.

Saddex jiho, saddex qaanuun oo kala duwan

Hal kulan wuxuu taabtaa qaanuunno in ka badan hal jiho, oo tunnel-ku wuxuu ku darayaa interface labaad ku dhowaad dhammaantood. Taraafikada marka hore jihada iyo interface-ka lagu kala saaro ayaa inta kale ka dhigta mid farsamo ah, sababtoo ah saf kasta oo hoose wuxuu u baahan yahay qaanuunkiisa meeshiisa. Tusaalooyinku waxay isticmaalaan tun0 iyo barkad 10.8.0.0/24, sidaas darteed beddel magacyada iyo xadka kuwa ka soo baxa output-ka macmiilka laftiisa.

DirectionExample packetRule that admits itWritten on
Client to the pushed resolverA DNS query to 10.8.0.1Destination port 53 over the tunnelThe client's tun0
Client to the VPN serverA handshake to the server's public addressServer address and port on the physical linkThe client's physical interface
Server to a serviceSSH from the pool to port 22Source pool, destination port, tunnel interfaceThe server's tun0
Anyone to the listenerThe VPN listener itself1194/udp on the public sideThe server's public interface

Laba saf ayaa badanaa lagu khaldaa sababtoo ah labaduba waxay sheegaan tunnel-ka. Qaanuunka resolver-ku wuxuu fasaxaa taraafikada macmiilku u diro tunnel-ka, halka qaanuunka SSH uu fasaxo taraafikada serverku ka helo; waxay ku nool yihiin mashiinno kala duwan oo si madaxbannaan u guuldareysta. Safka ugu badan ee la ilaabo waa kan labaad, sababtoo ah macmiilku ma dhisi karo tunnel-ka ilaa taraafikadiisa ciwaanka guud ee serverka la fasaxo. Ka shaqee kor ilaa hoos oo guuldarro kastaa waxay leedahay hal sabab oo suurtagal ah.

Resolver la riixay wuxuu u baahan yahay qaanuunkiisa

In tunnel-ku qaado DNS waxay ku xiran tahay waxa serverku soo diro. Serverka riixa ikhtiyaarka resolver-ka wuxuu ku rakibaa ciwaan gaar ah habaynta macmiilka, oo ciwaankaas waxaa lagu maraa tunnel-ka oo kaliya. Haddii serverku waxba riixin, macmiilku wuxuu hayaa resolver-kii uu hore u lahaa oo qaanuunnada hoose waxba ma fasaxaan. Ka hor intaadan wax qorin hubi xaaladda la riixay iyo natiijada weydiinta hadda:

dig +short @10.8.0.1 example.com
resolvectl status tun0
sudo ufw status numbered

Output-ka xaaladdu wuxuu magacaabaa resolver-ka la isticmaalayo iyo xiriirka uu ku xiran yahay, oo raadinta waddada ka dambeysa waxay muujineysaa interface-ka sidan weydiinta ciwaankaas. Marka resolver-ku ku fadhiisto xiriir kale, dhibaatadu waa ka hor firewall-ka oo qaanuunna ma caawin doono. Marka labaduba ku heshiiyaan tunnel-ka, laba qaanuun ayaa loo baahan yahay, sababtoo ah UDP ayaa qaada inta badan weydiimaha oo TCP ayaa la wareega marka jawaabta la gooyo. Qor labada qiime, sababtoo ah qaanuunnada ayaa magacaabi doona iyaga:

sudo ufw allow out on tun0 to 10.8.0.1 port 53 proto udp comment 'pushed resolver'
sudo ufw allow out on tun0 to 10.8.0.1 port 53 proto tcp comment 'truncated answers'

Fur waddada dibadda ka hor tan gudaha

Macmiilku waa inuu gaaraa ciwaanka guud ee serverka ka hor inta tunnel uusan jirin, sidaas darteed qaanuunkiisa wuxuu ku fadhiyaa xiriirka jirka oo waa inuu meeshiisa yahay marka hore. Siyaasad fasaxda resolver-ka laakiin iloobaysa serverka waxay macmiilka ka tagtaa mid aan dhisi karin tunnel-ka, oo calaamaddaas badanaa waxaa lagu dhejiyaa kill switch. Kadib fasax adeegyada aad runtii tunnel-ka ku rabtay, hal qaanuun cidhiidhi ah markiiba, halkii aad interface-ka oo dhan furi lahayd. Qaanuunnada cidhiidhiga ah ayaa sababta diidmadu meeshiisa ugu sii jiri karto.

sudo ufw allow out to 198.51.100.10 port 1194 proto udp comment 'vpn server'
sudo ufw allow out on tun0 to any port 443 proto tcp comment 'web through tunnel'

Nidaamku waa muhiim inta la tijaabinayo, sababtoo ah qaanuunka koowaad ayaa u oggolaanaya tunnel-ka inuu kor u kaco. Ku dar, xiriir, oo xaqiiji in tunnel-ku kor u kacay ka hor intaadan ku darin qaanuunka adeegga, sababtoo ah labadaba hal mar sameynta macneheedu waa guuldarradu waxba kama sheegto qaybta qaladka ah. Ku beddel ciwaanka dukumeentiga ee sare barta ugu dambeysa ee macmiilka loo habeeyay.

Ku dhammee dhinaca macmiilka adigoo si ula kac ah u gooya xiriirka. Diidmadu waa inay weli diiddo taraafikada aad si ula kac ah uga reebtay, sababtoo ah resolver jawaabaya marka tunnel-ku kaco wuxuu daboolaa keliya badhka siyaasad diidda marka shaki jiro.

Macmiilka xirma weli lama aqbalin

Serverku wuxuu leeyahay jihadiisa inuu tixgeliyo, oo macmiilka dhammaystira gacan-qabsiga weli ma gaaro wax ku socda serverka ilaa serverku aqbalo. Qaanuunka dhegeystaha guud wuxuu kaliya oggolaanayaa in tunnel-ku jiro; ma soo geliyo taraafikada tunnel-ka. Serverka kuwaanu waa laba qaanuun iyo hal hubin in adeeggu runtii dhegeysto:

sudo ufw allow 1194/udp comment 'openvpn listener'
sudo ufw limit in on tun0 from 10.8.0.0/24 to any port 22 proto tcp comment 'admin over tunnel'
ss -ltn | grep ':22'

Barkadda qaanuunka waa inay la mid tahay xadka serverku qoondeeyo, oo lambarka tunnel-ka waa inuu la mid yahay kii serverku abuuray, sababtoo ah qaanuunka interface kale lama kala garto qaanuun la'aan. limit si ula kac ah ayaa loogu talagalay deked maamul, sababtoo ah wuxuu xaddidaa xiriirka soo noqnoqda halkii uu si xadla'aan u aqbali lahaa. Hubinta dhegeystaha waxay kala saartaa deked xiran iyo packet la tuuray, kuwaas oo macmiilka ka mid ah isku mid u muuqda. Qaanuunnada lambaraysan sidoo kale ma aha sawirka dhan: qaanuunnada before ee UFW iyo line kasta oo nftables gacan ku qoran ayaa hore u dhigma oo weli diidi kara packet ay liisku u muuqato inuu fasaxayo.

Maqaallo la xiriira