Blokkearret de UFW-nedskakelaar jo VPN? Lit de partner ta
Jo regel foar útgong wegeret smyt de hânskodding fan 'e tunnel fuort. Ien útsûndering foar de partner, tafoege foar ufw enable, makket it belied in nedskakelaar.
Jo hawwe de checklist folge: útgong wegerje, de tunnel tastean, ufw ynskeakelje. Dan wachtet de klient by de hânskodding en ferbynt nea, of hy ferbynt en gjin inkelde side lade. Beide mislearrings komme út itselde gat. De regel dy't de tunnel bestean lit, mist, om't de tunnel gjin ynterface is dêr't jo pakketten út wei gean.
Wêrom't in talitting op tun0 earst nearne mei oerienkomt
tun0 wurdt troch de klient makke neidat in sesje bestiet. De datagrammen dy't dy sesje bouwe, binne gewoane UDP-pakketten dy't oan de oanbieder op poarte 1194 rjochte binne, en se geane fuort troch wlan0 of eth0 mei it fysike boarne-adres. allow out on tun0 komt allinnich oerien mei ferkear wêrfan it útgong-ynterface tun0 is, dus by de hânskodding komt it hielendal nearne mei oerien.
Set default deny outgoing der boppe op en de bûtenste pakketten wurde fuortsmitten foardat it ynterface ea ferskint. De klient besiket it opnij, rint yn in time-out en rapportearret in TLS- of hânskoddingflater, wat minsken troch sertifikaten en MTU jage lit wylst de firewall de ferbining stil opfret. De regel dy't jo ferkear ynbine moast, ferhindert dat dat ferkear ynbêde wurdt.
De refleksreparaasje makket it lek permanint. sudo ufw allow out on wlan0, of it standert weromsette nei tastean, bringt de tunnel omheech en lit de masine sûnder nedskakelaar: de folgjende kear dat de tunnel falt, giet alles wer oer de fysike adapter. Ik ferlear in middei oan krekt dat pear wizigings foardat ik útfûn hokker pakket ik eins filtere.
Wat de twa sets pakketten nedich hawwe
Jo ferkear krúst de firewall twa kear, yn twa foarmen. It binnenste pakket rint fan it tunneladres nei bûten troch tun0. It bûtenste pakket rint fan it fysike adres nei de partner, en dat is it iennige dat op 'e tried te sjen is. Ien regel per foarm:
sudo ufw allow out on tun0
sudo ufw allow out to 203.0.113.10 port 1194 proto udp
sudo ufw allow out to 203.0.113.10 port 443 proto tcp comment 'tcp fallback'
Ferfang it adres en de poarte troch dy fan jo eigen profyl. WireGuard-partners antwurdzje meastentiids op 51820/udp; OpenVPN-profylen dy't oer TCP 443 geane, hawwe dy poarte nedich ynstee. De details ferskille, de foarm net: beide regels binne smel en tegearre bepale se de iennige bestimmings dy't de masine berikke kin wylst de tunnel del is.
Oarder is de twadde myte. By rûge iptables lêze jo de keatling fan boppen nei ûnderen en betinke hokker regel wint. ufw is gjin tinne wrapper om 'e list dy't jo typt hawwe; it kompilearret jo regels yn syn eigen keatlingen en kiest de ynfoegpunten. ufw status prints se yn 'e oarder fan ufw, net yn jo. As in regel negearre liket, fergelykje ufw show added mei de kompilearre set út iptables -S | grep ufw foardat jo eat oerskriuwe.
De útsûndering moat ien adres breed bliuwe
In partnerregel is allinnich korrekt salang't er it adres neamt dat de klient kiest. Oanbieders rotearje einpunten, en in profyl dat in hostnamme oplost, sil in DNS-feroaring folgje nei in nij adres wylst de regel nei it âlde bliuwt wizen. As in tunnel dy't moannen wurke hat, net mear omheech komt, fergelykje dan it adres yn 'e regel mei dat dêr't de klient nei siket foardat jo eat ferbreedzje.
Ferbreedzjen nei in hiel subnet, of nei elke bestimmings op poarte 1194, makket it belied wer in firewall mei in gat. De útsûndering is de nedskakelaar; sadree't er breed is, is der neat mear oer om te skakeljen. Hâld it op ien adres en lit in kommentaar efter dat it profyl en de oanbieder neamt dêr't it by heart, want oer seis moannen sil it adres willekeurich lykje.
Namme-oplossing fertsjinnet syn eigen rigel. De syktocht bart foardat de tunnel bestiet, oer it fysike ynterface, dus in strang útgong-wegerjend belied kin de klient net by steat litte syn eigen tsjinner te finen. Lit poarte 53 ta nei it adres fan jo resolver, of los ien kear op en set it adres fêst yn it profyl. DNS tastean op elk ynterface is in beslút, net in standert.
Bou it belied foardat de tunnel nedich is
ufw enable past it hiele belied tagelyk ta en werladen syn keatlingen, en it feroarjen fan in standertbelied op in draaiende firewall werlaadt se ek. De ufw-hantlieding warskôget dat dit besteande ferbiningen lykas SSH falle litte kin. Dêrom geane de opdrachten yn dizze oarder, mei de SSH-regel foar it ynskeakeljen en in iepen konsolesesje:
sudo ufw default deny incoming
sudo ufw default deny outgoing
sudo ufw allow out on tun0
sudo ufw allow out to 203.0.113.10 port 1194 proto udp
sudo ufw allow 22/tcp
sudo ufw enable
sudo ufw status verbose
ufw reset is mei opsetsin bûten dat blok litten. It smyt elke regel fuort en skeakelet de firewall út, en op in fiere host is it folgjende ynskeakeljen wat jo sesje falle lit. As jo dochs resetten, foegje dan de SSH-regel ta en befêstigje in twadde wei werom fia in konsôle foardat jo fierder geane.
De folchoarder is net kosmetysk. Regels tafoege wylst ufw draait, spiele neat, mar op it momint dat jo in standertbelied omkeare, wurde de keatlingen werladen, en in sesje dy't it âlde belied tastie, giet mei. Doch de standerten, de talittings en it ynskeakeljen yn ien passaazje, wylst jo noch in wei nei binnen hawwe dy't net fan 'e masine ôfhinklik is.
Test de blokkearre steat, en hâld de ûngedien-makking
In net teste nedskakelaar is in gis. Ferbreek de klient mei opsetsin en besykje in side te laden: it moat mislearje. Ferbyn wer en it moat him herstelle sûnder in regel oan te reitsjen. sudo ufw status verbose befêstiget de standerten en de logsteat, en ufw status numbered lit sjen hokker testregel te wiskjen as er syn doel oerlibbet.
Hâld it omkearde skript njonken it foarútgeande. In masine mei útgong-wegering en in deade tunnel kin syn eigen reparaasje net downloade, dus de ûngedien-makking moat op 'e skiif stean en fan in konsôle lêsber wêze:
sudo ufw reset
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable
Run it as de tunnel al del is en de regels derôf moatte, net as in routine-stap. Foardat jo de terminal slute, moatte fjouwer dingen jilde: de partnerregel neamt krekt ien adres, DNS hat in neamde útsûndering, it ynskeakeljen kaam nei de talittings, en it lûken fan 'e tunnel deat gewoan ferkear sûnder de klient foargoed te deadzjen.