Folk spørger, om WireGuard er klar til produktion, hvilket lyder som et spørgsmål om kryptografi og egentlig er et spørgsmål om dit miljø. Protokollen er blevet gennemgået i årevis; udrulningen skal stadig svare på, om dine netværk bærer dens transport, hvem der indskriver og udfaser enheder, og hvem der patcher pakken i begge ender. Svarene er forskellige for to servere i et rack og tusind bærbare computere. Protokollen er den samme i begge tilfælde; driften er ikke.

Spørgsmålet bag spørgsmålet

Det, folk normalt vil vide, er, om de kan forpligte sig til et design, der ikke bringer dem i forlegenhed om seks måneder. Det er et udrulningsspørgsmål med fire dele, og hver del kan fejle uafhængigt af de andre. Gode svar på tre af dem opvejer ikke den fjerde.

En gammel advarsel om et præ-release snapshot er et faktum om det snapshot, ikke en permanent etiket på hver senere pakke. Lige så lidt kan et blogindlæg erklære din specifikke kombination af kerne, klient, netværk og personale for klar. Arbejdet består i at gøre kombinationen eksplicit og kontrollere den.

Behandl parathed som et sæt gates, som du enten består eller registrerer som åbne. Det gør en diskussion til en tjekliste med ejere. Det gør også de åbne punkter synlige for den, der godkender, i stedet for begravet i en pilotrapport.

Gate et: vejen skal bære UDP

WireGuard bærer sin trafik over UDP og dokumenterer, at den ikke tilbyder en TCP-tilstand eller trafiksløring. Et design, der afhænger af, at det ligner almindelig webtrafik, eller af at skifte porten for at få TCP-adfærd, bygger på en antagelse, som softwaren ikke understøtter.

Så den første gate er en kortlægning, ikke en test på én maskine. List de adgangsmiljøer, dine brugere faktisk arbejder i, og verificér derefter den godkendte UDP-vej i hvert af dem, og beslut, hvad der sker, når den ikke er tilgængelig.

En forbindelse, der virker fra kontoret, beviser intet om et hotelnetværk, en campusfirewall eller et mobilselskab, der håndterer UDP anderledes. De miljøer er grunden til, at fjernadgangsudrulninger fejler efter en vellykket pilot. Piloten var ikke forkert; den var snæver. At udvide den er gaten.

Skriv også fallbacken ned. Hvis svaret er, at der ikke er nogen fallback, er det en beslutning, der er værd at erklære på forhånd i stedet for at opdage under en tjenesterejse.

Gate to: nogen skal eje nøglerne

WireGuard-peers autentificerer med nøgler, et par pr. deltager. Det er let at beskrive og krævende i drift, fordi intet i protokollen indskriver en enhed, sporer hvem der har hvilken nøgle eller fjerner adgang, når en bærbar computer mistes. Protokollen antager, at nøglerne allerede er korrekte, og korrekthed er nogens arbejde.

Navngiv den person, der indskriver en enhed, den registrering, der knytter en offentlig nøgle til en person og en enhed, og proceduren for fjernelse. Hvis fjernelse afhænger af at huske, hvor kopier af en konfigurationsfil blev installeret, er proceduren ikke færdig.

Vælg en enhed under piloten, og udfas den fra ende til anden. Den øvelse giver mere brugbar information end endnu en forbindelsestest, fordi den afslører hullerne i dine registreringer.

Gate tre: pakken har brug for en vedligeholder

WireGuard kan komme som en implementering i kernen, som en distributionspakke eller som en klient i brugerrummet, og hver har sin egen opdateringsvej. Det operationelle spørgsmål er, hvilken du kører, hvor den kom fra, og hvem der anvender en sikkerhedsbulletin.

Vi bruger WireGuard er ikke en fortegnelse. Den angiver ikke pakken, der skal patches, versionen på gatewayen eller personen, der kan rulle en dårlig opdatering tilbage.

Gate fire: accepter arbejdsbyrden, ikke håndtrykket

Acceptkriterier bør beskrive, hvad brugerne gør. At nå en intern applikation, at slå dens private navn op, at blive afvist ved en uautoriseret destination og at følge den definerede adfærd, når tunnelen er nede, er alle observerbare, og et vellykket håndtryk er ingen af dem.

Kør disse kontroller gennem et netværksskift, en enhedsgenstart og et vedligeholdelsesvindue for gatewayen, fordi det er i de overgange, at udrulninger brækker.

Opbevar dokumentationen ved siden af kriterierne, inklusive den lokale tilstand, der frembragte den:

wg show
ss -lunp | grep 51820
ip -4 route get 10.63.0.1

En grøn test på et roligt netværk med én bærbar computer er en indledende observation. Det er ikke en påstand om pålidelighed, og at behandle den som en er måden, hvorpå et design, der virker, bliver et design, der stoles på.

Relaterede artikler