Jy voeg ’n takroete by, dit werk, en dan verwyder ’n firmware-opdatering of ’n stoor uit die web-koppelvlak dit. Twee regmaaksels lyk op daardie oomblik ewe redelik: plaas die roete in die toestel se ondersteunde konfigurasiebron, of voeg dit by die gegenereerde lêer uit ’n opstartskrip. Hulle gedra hulle ’n week lank dieselfde en wyk by die tweede opgradering uiteen. Hierdie artikel vergelyk wat elkeen werklik besit.

Die twee kandidate besit verskillende dinge

Die ondersteunde konfigurasiebron is alles wat die toestel as invoer beskou: ’n GUI-veld, ’n ingevoerde profiel, ’n gedokumenteerde gids per kliënt, ’n instellingsdatabasis wat die bestuurspakket lees. Die gegenereerde server.conf is uitset. Om uitset te wysig werk totdat die genereerder weer loop, wat by stoor, by herbegin en by opgradering gebeur.

Die skripbenadering pleister daardie uitset nadat die genereerder klaar is. Dit is ’n wettige tegniek vir ’n laboratorium, en dit is die verkeerde verstek vir ’n takkantoor, want dit maak die roete afhanklik van tekspassing eerder as van ’n gedokumenteerde veld.

QuestionSupported config sourcePost-generation script
Survives a GUI saveYesOnly if the save does not regenerate the file
Survives a package upgradeUsually, when the field is documentedNo guarantee; the wrapper can be replaced
Supportable by the vendorYesNo
Obvious to the next adminYes, it is in the UINo, it lives in a wrapper

Wat die toestel hergenereer, en wanneer

Bestuurspakette hou instellings gewoonlik in ’n databasis of ’n stel sjablone en lewer die daemon-konfigurasie by die opstart. ’n Stoor uit die web-koppelvlak herskryf dikwels die hele lêer eerder as om ’n reël te pleister. As jou verandering in daardie lêer gewoon het, is dit nou weg, en niks teken ’n waarskuwing aan nie, want uit die toestel se oogpunt het niks verlore gegaan nie.

Opstartomhulsels het ’n tweede foutmodus. ’n grep vir ’n opdrag met ’n bepaalde spasiëring hou op pas ná ’n sjabloonverandering, en die skrip doen stilweg niks. Erger nog, ’n firmware-opdatering kan die omhulsel met ’n nuwe weergawe vervang en die pleister saamneem. Jy het dan ’n roete wat ’n jaar lank bestaan het en tydens onderhoud verdwyn het wat niemand met roetes verbind het nie.

Wat die ondersteunde eienaar moet uitdruk

’n Takvoorvoegsel het drie stellings nodig, nie een nie. Die kliënt moet die roete leer, die bediener moet weet watter gemagtigde kliënt die voorvoegsel besit, en die takkant moet verkeer terugstuur na die tonneladres wat dit gekry het. In OpenVPN-terme beteken dit ’n gestuurde route, ’n ooreenstemmende iroute wat aan die kliënt gekoppel is, en ’n terugpad aan die oorkant.

Dit is waar toestel-koppelvlakke mislei. ’n Merkblokkie met die etiket “laat kliënte toe om die bediener se LAN te bereik” beskryf verkeer na die bediener se eie netwerk. Jou tak is die teenoorgestelde rigting: ’n netwerk agter een kliënt, bereikbaar vanaf die bedienerkant. Dieselfde etiket impliseer nie ondersteuning daarvoor nie, en ’n geldige opdrag in ’n lêer is nie ’n belofte dat die pakket dit sal bewaar nie.

Wanneer geen ondersteunde beheer bestaan nie

Soms kan die geïnstalleerde weergawe werklik nie ’n eweknie-spesifieke roete uitdruk nie. Dan is die eerlike opsies ’n ander poort wat jy beheer, of ’n ondersteunde werf-tot-werf-modus aan beide kante. Beide eindpunte moet dit praat. ’n Produkblad wat werf-tot-werf sê, maak nie ’n willekeurige OpenVPN-profiel uitruilbaar met ’n ander protokol se tonnel nie, en om daardie paring te forseer lewer gewoonlik ’n halfgekoppelde tonnel wat in ’n statusblad goed lyk.

Kies die opsie wat jy in een sin kan beskryf aan wie ook al die netwerk erf. As die antwoord ’n skrippad en ’n tekspatroon moet noem, is die ontwerp alreeds broos.

Maak die bedoeling ouditeerbaar

Teken die kontrak buite die toestel aan: effektiewe kliëntidentiteit, voorvoegsel, terugpoort, en die ondersteunde veld wat elkeen voorsien. Voer die konfigurasie deur die ondersteunde meganisme uit sodat ’n herbou ’n verwysing het, en verifieer diens ná ’n herverbinding, ’n herbegin en ’n opgradering eerder as net ná die verandering.

Vergelyk die gegenereerde resultaat met daardie rekord wanneer iets breek, eerder as om ’n onverklaarde reël te herstel en te hoop.OpenVPN 2.6-verwysing is die plek om te bevestig hoe route en iroute met mekaar werk voordat jy met ’n koppelvlak stry.

Kontrolelys vir die volgende verandering: noem die eienaar, stel die driestuk-kontrak, voer die bedoeling uit, en toets weer ná die toestel se eie lewensiklusgebeurtenisse eerder as ná jou wysiging.

Verwante artikels