Twa klanten op ien server wikselje bestannen út, de oerdracht slagget, en elke trochstjoerregel dy't jo op 'e tunnel rjochtsje rapportearret nul pakketten. De regels binne net stikken en de keatling stiet net ferkeard. Mei trochstjoering tusken pearen oan, wurdt it pakket binnen it serverproses levere en de host-stapel wurdt nea de router, dat de kernfirewall hat neat te tellen. It begripen fan dy splitsing beslút oft jo de flugge wei hâlde of it paad troch de kern wer opbouwe.

Folgje ien pakket troch de server

Yn in rûte tunnel jout de daemon it ûntsifere pakket fan elke klant oan it tunnelapparaat. Fan dêrwei rûtet de host it, de trochstjoerheak rint, en in regel dy't by it tunnelapparaat past kin it ferkear telle of fuortsmite. Dat is it paad dat de measte firewall-foarbylden oannimme.

Forwarding pathWho decidesWhat the host firewall sees
Kernel routing between clientsHost routing table and forward rulesEvery inner packet, with interface names
Peer forwarding inside the server processThe VPN daemon's own peer tableOnly the outer encrypted transport

De flugge wei hellet de host út 'e midden. It ûntsifere pakket fan ien sesje wurdt binnen de daemon oan in oare sesje jûn, en it binnenste pakket wurdt nea op it tunnelapparaat útstjoerd en net troch de host rûte. Ynkapsele ferkear giet noch altyd oer de fysike interface, dat in bûtenopname liket drok wylst de binnenregels stil bliuwe. In opname op it tunnelapparaat lit hielendal neat sjen, wat elkenien ferrast dy't ferwachtet de oerdracht dêr te sjen. Dy asymmetry is de fluchste manier om de flugge wei fan bûten de daemon te werkenne.

De tellertoets dy't beslist hokker paad rûn

Hingje in teller oan 'e regel dy't jilde moat, rin in oerdracht tusken twa klanten dy't dy regel blokkearje moat, en lês de teller dêrnei.

sudo nft list ruleset
sudo nft add rule inet filter forward iifname "tun0" oifname "tun0" counter accept
sudo nft list chain inet filter forward

As de oerdracht slagget en de teller bliuwt op nul, hat de kern dy pakketten nea behannele, en gjin inkel oanpassen fan regels sil dat feroarje. Werhelje deselde toets tsjin in tsjinst op 'e server sels, want dat stream giet wol troch de host-stapel en syn teller beweecht. It fergelykjen fan de twa resultaten is wat it antwurd jout.

Twa details foarkomme in ferkearde lêzing. In interface-namme skreaun yn in keatlinglabel filteret op himsels neat, want de oerienkomst bart op interfacefjilden binnen regels. En in oerbrêge laach-2-ûntwerp hâldt him wer oars: dêr diele de klanten ien broadcast-domein, dat it ûntdekken fan pearen is ferwachte en gjin rûteflater.

In switch is gjin tagongslist

Dit is it diel dat in middei kostet. Trochstjoering tusken pearen is ien oan-of-út-ynstelling, en wylst it oan is de daemon it iennige trochstjoerpunt. De host-firewall kin net útdrukke wa't wa berikke mei, en bestannen per klant meitsje de switch net ta in beliedsmatriks.

As jo regels per pear nedich hawwe, is de kar tusken it opjaan fan 'e flugge wei en it opjaan fan 'e host-firewall as de kontrôle. It útsette bringt kern-trochstjoering werom, wat IP-trochstjoering op 'e server en eksplisite regels foar de streamen dy't jo wolle fereasket. It oanhâlde betsjut dat it belied yn 'e konfiguraasje fan 'e daemon libbet, wat yn 'e praktyk alle pearen of gjin pear is.

Aparte serverprosessen mei eigen adrespulen en poarten binne de wurkbere middenwei. Elk proses draacht krekt ien tagongsbeslút, dat twa groepen kinne ferskate regels hawwe sûnder in beliedsmatriks. De host kin tusken de pulen rûte as dat de bedoeling is, en dan sjocht de firewall dy streamen omdat se de host oerstekke. De kosten binne ekstra poarten, ekstra sertifikaten en in profyl per groep.

It trochstjoerpunt kieze

Kies kern-trochstjoering as de firewall de beliedsmotor is, as jo logging per stream nedich hawwe, of as boekhâlding fan belang is. De kosten binne trochset troch de host-stapel en mear regels om te ûnderhâlden. It foardiel is dat elk besteand helpmiddel, fan tellers oant streameksporteurs, it ferkear wer beskriuwt. Op in lytse server is dy kosten ûnsichtber; op in drok relais net.

Kies trochstjoering yn it proses as pearferkear of alles tastien of alles wegere is en de server dêrfoar ôfmjitte is. De kosten binne dat tellers, wachtrigedissiplines en ferbiningstracking de binnenstreamen net mear beskriuwe; dat is allinnich akseptabel as nimmen der letter op fertrout.

Hokker jo ek kieze, skriuw it njonken de firewall-regels. In regelset dy't liket pearferkear ta te stean wylst de daemon it dochs beslist, misliedt de folgjende persoan dy't in mislearre oerdracht debugt. Elkenien dy't allinnich de regels lêst, sil oannimme dat de kern de poarte is.

Wat te kontrolearjen foar it feroarjen fan regels

Lês de konfiguraasje dy't de server wier laden hat, net it bestân dat jo jo bewust binne bewurke te hawwen, en befêstigje oft de pear-opsje oanwêzich is. As jo it feroare hawwe, soargje derfoar dat de tsjinst wer laden is en net allinnich in bestân op skiif oerskreaun hat.

Werhelje dan de toets mei in stream fan klant nei server om te bewizen dat de regel hielendal past, en kontrolearje de ta stjoerde rûtes, want in ûntbrekkende rûte liket fan 'e klantkant krekt as in firewall-blokkade. Feroarje de folchoarder fan regels pas as jo witte hokker trochstjoerpunt it beslút hat.

Relatearre artikelen