Tveir biðlarar geta báðir opnað stökkshýsilinn og eiga samt enga erindi við að opna hvorn annan. Að ná þjónustu er sendingarákvörðun, en að ná jafningja er stefnuákvörðun, og flest VPN-stöflur halda þessu í aðskildum hlutum. Ekkert af því sem þú stillir fyrir það fyrra framfylgir því síðara. Verkefnið er því ekki að bæta við reglu, heldur að finna hlutinn sem ræður umferð jafningja á þessum þjóni, skrifa synjunina þar og sanna hana frá biðlara.

Leið að sameiginlegu þjónustunni er ekki heimild milli jafningja

Að tilkynna biðlarakerfið segir jafningja hvernig setja eigi pakka á snúruna í átt að heimili annars biðlara. Hvort sá pakki verður afhentur ræðst síðar, af því sem sendir hann. Á Linux-hliði er það FORWARD-keðjan; inni í djöfli í notendarými er það eigin lotutafla göngunnar. Leið svarar aðgengi og lætur heimildina óhreyfða.

Þess vegna sannar einangrunarpróf sem les aðeins leiðir ekkert. Hægt er að ýta /24 til hvers biðlara á meðan hverjum pakka milli jafningja er hent við sendingarkrókinn. Hættulega tilfellið er hið gagnstæða: engin skýr regla, leyfandi sjálfgefið gildi og einangrun sem er aðeins til vegna þess að enginn prófaði hana.

Skrifaðu kröfuna á eina línu áður en þú opnar skjáhermi. Náðu í þjónustublokkina og stökkshýsilinn, náðu engu öðru inni í biðlarablokkinni.

Finndu hver sendir jafningjapakkann í raun

Tvær hegðanir þjónsins líta eins út frá biðlarahlið og krefjast mismunandi reglna. Annaðhvort sendir kjarninn pakkann aftur út úr gönguviðmótinu, eða djöfullinn afritar hann milli lota og kjarninn sér hann aldrei.

WireGuard tilheyrir fyrsta hópnum: það hefur engan rofa milli jafningja, svo pakki frá 10.8.0.4 til 10.8.0.5 kemur á wg0, lendir á sendingarkróknum og er leiðbeint aftur út úr wg0 þegar AllowedIPs nær yfir bæði heimilin. OpenVPN er annar hópurinn um leið og client-to-client er sett í stillingum þjónsins, því sú tilskipun afhendir pakkann milli lota í notendarými. Athugaðu hlaðnar stillingar fyrir þeirri tilskipun áður en þú skrifar nokkuð. Kjarnareglu sem sér aldrei umferð er ekki hægt að greina frá reglu sem virkar, og þannig endar uppsetning án nokkurrar einangrunar.

Lestu virku stillingarnar frekar en skrána sem þú gerir ráð fyrir að sé hlaðin, því dreifingarpakkar koma með eigin innfellingar. Ef djöfullinn sendir tilheyrir synjunin eigin stýringum hans fyrir hvern biðlara, og eldveggur hýsilsins síar aðeins umferð sem er beint að hýsilnum. Ef kjarninn sendir er sendingarkrókurinn eini staðurinn sem skiptir máli.

Leiðbeindar og þýddar uppsetningar þurfa eina athugun í viðbót: uppruninn sem fjarlægur biðlari sér er kannski ekki sá sem þú býst við. Þá passar regla sem passar við biðlarakerfið við ekkert. Skráðu heimilið sem lifir þýðinguna áður en þú skrifar samsvörunina, og veldu frekar að para viðmóts parið en að giska á NAT-heimili.

Gefðu hverju heimili sjálfstæða auðkenningu sem hægt er að afturkalla

Einangrunin hrynur um leið og tvö tæki deila einni auðkennisvottorði. Regla sem er bundin þeirri auðkenningu getur ekki aðskilið þau, og afturköllun týndrar fartölvu afturkallar allan hópinn. Vottorð fyrir hvert tæki eða lyklar fyrir hvern jafningja halda afturkölluninni staðbundinni og stefnunni læsilegri, því hvert heimili varpar á nákvæmlega eina manneskju eða vél. Þar sem hönnunin getur það ekki, segðu það í rekstrarhandbókinni í stað þess að lýsa reglunni sem fíngerðri.

Úthlutun heimila verður að vera í samræmi við stefnuna. Taktu frá blokk fyrir þjónustur, blokk fyrir biðlara, og úthlutaðu biðlaraheimilum úr safni sem þú stýrir frekar en bili þar sem fyrstur kemur fyrstur fær. Ef þjónninn þýðir eða brúar skaltu halda vörpunartöflunni við hlið stillinganna, því það er taflan sem næsti lesandi þarf til að leiða regluna aftur út.

Settu synjunina þar sem pakkinn fer yfir gönguna

Á hliði sem sendir WireGuard-umferð ná tvær reglur yfir tilfellið: leyfðu þjónustublokkina og slepptu svo restinni af biðlarablokkinni. Viðmótsparið skiptir jafn miklu máli og heimilin, því samsvörun eingöngu á áfangastað grípur líka umferð frá LAN-inu. Hladdu þeim í þeirri röð svo heimildin sé metin fyrst.

Með nftables fer parið inn í fyrirliggjandi inet filter töflu, heimild fyrst og slepping næst. Báðar samsvöruninar festa viðmótsparið sem og heimilin.

nft add rule inet filter forward iifname "wg0" oifname "wg0" ip saddr 10.8.0.0/24 ip daddr 10.8.2.0/24 accept
nft add rule inet filter forward iifname "wg0" oifname "wg0" ip saddr 10.8.0.0/24 ip daddr 10.8.0.0/24 drop

Lestu keðjuna aftur eftir hleðslu í stað þess að treysta útstöðustöðunni, og staðfestu að báðar reglur standi í þeirri röð sem þú ætlaðir. Bættu við samsvarandi ip6-reglum fyrir IPv6-safnið, annars er v4-parið aðeins skraut á tvískiptri göngu. Ef þjónninn hefur þegar leyfandi sendingarstefnu skaltu bæta sleppingunni við í stað þess að skipta keðjunni út að fullu.

Þegar client-to-client er virkt á OpenVPN passa þessar sendingarreglur aldrei við umferð jafningja og synjunin verður að lifa í eigin stýringum djöfulsins. Haltu kjarnareglunum fyrir umferð sem er beint að hýsilnum, en ekki telja þær með sem einangrunarstýringuna.

Sannaðu synjunina frá biðlara, ekki frá þjóninum

Prófanir frá hliðinu sanna ekkert, því umferð sem er búin til á staðnum fer útstöðuleiðina og fer aldrei yfir sendingarkrókinn. Notaðu tvo raunverulega biðlara: einn sem á að ná þjónustunni, einn sem á að vera hafnað. Keyrðu leyfða tilfellið fyrst, svo brotin ganga sé ekki tekin fyrir virka stefnu.

Frá leyfða biðlaranum, staðfestu að þjónustan svari á portinu sínu. Frá sama biðlara, prófaðu heimili jafningjans og búðu þig við hljóðlausri sleppingu frekar en synjun:

ping -c 3 -W 2 10.8.0.5
nc -z -w 2 10.8.0.5 22
nft list chain inet filter forward
iptables -vnL FORWARD
ping -6 -c 3 -W 2 fd00:8::5

Slepptur pakki og ótengdur jafningi líta báðir út eins og tímamörk, svo athugaðu teljarana áður en þú ályktar nokkuð. Staðfestu að teljari sleppingarreglunnar hækki á meðan jafninginn er sannanlega virkur. Endurtaktu yfir IPv6, þar sem vantar ip6-reglu lætur v4-synjunina líta út fyrir að vera virka. Skráðu samþykktar og hafnaðar niðurstöður í handbókina með dagsetningu, því næsta flutningur mun leiða regluna aftur út.

Tengdir greinar