Twa skripts dy’t fjochtsje om deselde rûte is de gewoane foarm fan in Linux-VPN-probleem dat as in routingbug registrearre wurdt. Ien komponint makket it tunnelapparaat, in oar foeget in standertrûte ta, in tredde skriuwt de resolver-konfiguraasje oer, en in fjirde werlaadt firewallregels. Elk fan harren kin it wurk fan in oar ûngedien meitsje, en de winner is gewoan wa’t it lêst rûn. De fraach dy’t it antwurdjen wurdich is, is net hokker pakket te ynstallearjen, mar hokker komponint foar elk stik fan steat autoritatyf is.

Skriuw dy kaart ien kear op, en de measte werferbiningmislearrings hâlde op mysterieus te wêzen. Fjouwer objekten binne fan belang: it apparaat en syn adressen, de rûtes en beliedsregels, de DNS-konfiguraasje en de firewall.

It apparaat en syn adressen

In tunnelapparaat wurdt makke troch in behearder dy’t it profyl ken, of troch in daemon dy’t immen mei de hân start hat. Beide regelingen wurkje op harsels; it mingjen derfan net. As NetworkManager it profyl hat, lit it dan ek it apparaat hawwe, en start gjin OpenVPN-proses sûnder behear tsjin deselde tunnelnamme.

Skriuw op wa’t it apparaat fuorthellet as de sesje einiget. In apparaat dat syn sesje oerlibbet is de meast foarkommende boarne fan ferâldere adressen en fan ‘e betizing dêrnei.

Rûtes en beliedsregels

It is op ‘e rûtes dat eigendomskonflikten sichtbere skea oanrjochtsje. In ferbiningsbehearder ynstallearret in standertrûte foar de tunnel plus in spesifiker rûte foar it fiere netwurk; in mei de hân skreaun skript foeget dan syn eigen standert ta mei in oare metryk en wint of ferliest stil, ôfhinklik fan ‘e timing. Bepaal hokker yngongen ferbiningbûn binne, hokker permanint belied binne en hokker komponint se nei in werferbining ferfarsket. Hâld dan de oare komponinten bûten dy tabel.

Beliedsregels fertsjinje deselde dúdlikheid, want in regel dy’t nei in tabel wiist dy’t nimmen follet, produsearret in swart gat dat der krekt as in deade tunnel útsjocht. As in regel bestiet om ferkear earne hinne te twingen, moat de tabel dy’t er kiest troch deselde eigner ûnderholden wurde.

DNS is altyd in aparte eigner

In resolver-daemon rint as syn eigen proses ûnder syn eigen identiteit, dus erft er net by ûngelok de routingbesluten fan ‘e tunnel. As de VPN DNS-servers triuwt, moat eat dat oersette yn per-keppeling-konfiguraasje dy’t de resolver respektearret, en eat moat it dêrnei wer fuorthelje.

De myte hjir is dat it skriuwen fan in nammeserver yn it profyl feroaret wêr’t fragen hinne geane. It feroaret wat de resolver ferteld wurdt, net hokker socket de resolver opstreams brûkt. Test mei in fraach plus in rûtesyktocht ynstee fan it bestân te fertrouwen.

Firewallsteat, en wa’t dy werombringt

Firewallregels binne it objekt dat it meast oerskreaun wurdt op in VPN-host. In behearder kin NAT- of trochstjoerregels per ferbining tafoegje, wylst in firewallsjinst by it opstarten in bewarre regelset werlaadt en se wisket. Kies ien autoriteit foar belied en meitsje de oare in konsumint derfan, of akseptearje dat in werstart it gedrach stil feroaret. Ferbiningbûne útsûnderingen hearre yn in bestân dat deselde eigner laadt, net yn in iptables-opdracht dy’t by it oplossen fan problemen typt wurdt.

As regels in werferbining oerlibje moatte, sis dat eksplisyt. As se dat net moatte, sis dat ek, want de folgjende yngenieur sil it antwurd oannimme dat it noflikst is.

Libbenssyklus: opstart, werferbining, ôfbrekken

Jou elk fan dy trije mominten in eigner. By opstart, beslute wat betingsten taret en yn hokker folchoarder. By in sêfte werstart, tink deroan dat it apparaat oerlibje kin wylst de sesjestate dat net kin, dus moat in falidearder rinne ynstee fan in makker. By ôfbrekken, ferwiderje allinnich wat dizze ferbining makke hat, want elke rûte weromsette of de hiele firewall leegje is net itselde as ien tunnel út tsjinst nimme.

Foar observaasje lit ip monitor link address route kernelferoarings sjen sa’t se barre, mar it rapportearret foarfallen ynstee fan bedoeling: in fuortsmiten rûte seit neat oer hokker proses it fuortsmiten hat. Keppelje it oan ‘e eigendomskaart, en in betiizjende ôfsluting wurdt in koarte list fan kandidaten.

Utsûnderingen hawwe ek in priis. In hiele apparaatklasse as ûnbeheard markearje om in konflikt te ûntkommen jout dy steat oan nimmen, wat in beslút is ynstee fan in reparaasje.

Relatearre artikelen