Folk spør om WireGuard er klart for produksjon, noko som høyrest ut som eit spørsmål om kryptografi og eigentleg er eit spørsmål om miljøet ditt. Protokollen har vore gjennomgått i årevis; utrullinga må framleis svare på om netta dine ber transporten, kven som registrerer og avviklar einingar, og kven som lappar pakken i begge endar. Desse svara er ulike for to tenarar i ein rack og tusen berebile maskiner. Protokollen er den same i begge tilfelle; drifta er det ikkje.

Spørsmålet bak spørsmålet

Det folk vanlegvis vil vite, er om dei kan forplikte seg til eit design som ikkje gjer dei flaue om seks månader. Det er eit utrullingsspørsmål med fire delar, og kvar del kan svikte uavhengig av dei andre. Gode svar på tre av dei veg ikkje opp for den fjerde.

Ei gammal åtvaring om ein førutgjeving er eit faktum om den førutgjevinga, ikkje ein permanent etikett på kvar seinare pakke. På same måte kan ingen bloggpost erklære din spesifikke kombinasjon av kjerne, klient, nett og personale for klar. Arbeidet er å gjere kombinasjonen eksplisitt og kontrollere han.

Behandle klarheit som eit sett portar du anten består eller registrerer som opne. Det gjer ein diskusjon om til ei sjekkliste med eigarar. Det gjer òg dei opne punkta synlege for den som godkjenner, i staden for gravlagd i ein pilotrapport.

Port éin: vegen må bere UDP

WireGuard ber trafikken sin over UDP og dokumenterer at det ikkje tilbyr ein TCP-modus eller trafikkforkleding. Eit design som er avhengig av at det ser ut som vanleg webtrafikk, eller av å byte port for å få TCP-åtferd, byggjer på ein føresetnad programvara ikkje støttar.

Så den første porten er ei kartlegging, ikkje ein test på éi maskin. List opp tilgangsmiljøa brukarane dine faktisk arbeider i, verifiser deretter den godkjende UDP-vegen i kvart av dei, og avgjer kva som skjer når han ikkje er tilgjengeleg.

Ei sambinding som verkar frå kontoret beviser ingenting om eit hotellnett, ein campusbrannmur eller ein mobiloperatør som handterer UDP annleis. Det er desse miljøa som gjer at utrullingar av fjern tilgang sviktar etter ein vellukka pilot. Piloten var ikkje feil; han var smal. Å utvide han er porten.

Skriv òg ned reservevegen. Viss svaret er at det ikkje finst nokon reserveveg, er det ei avgjerd det er verdt å seie høgt på førehand i staden for å oppdage på ei tenestereise.

Port to: nokon må eige nøklane

WireGuard-peers autentiserer med nøklar, eitt par per deltakar. Det er enkelt å skildre og krevjande i drift, fordi ingenting i protokollen registrerer ei eining, sporer kven som har kva nøkkel eller fjernar tilgang når ei berebile maskin blir borte. Protokollen føreset at nøklane allereie er riktige, og riktigheit er nokon sitt arbeid.

Namngi personen som registrerer ei eining, registreringa som knyter ein offentleg nøkkel til ein person og ei eining, og prosedyren for fjerning. Viss fjerning er avhengig av å hugse kvar kopiar av ei konfigurasjonsfil vart installerte, er prosedyren ikkje ferdig.

Vel éi eining i løpet av piloten og avvikle ho frå start til slutt. Den øvinga gir meir nyttig informasjon enn nok ein tilkoplingstest, fordi ho avdekkjer hola i registreringane dine.

Port tre: pakken treng ein vedlikehaldar

WireGuard kan kome som ein implementasjon i kjernen, som ein distribusjonspakke eller som ein klient i brukarrommet, og kvar har sin eigen oppdateringsveg. Det operative spørsmålet er kva for ein du køyrer, kvar han kom frå og kven som legg inn eit tryggingsvarsel.

Vi bruker WireGuard er ikkje ei oversikt. Ho angir ikkje pakken som skal lappast, versjonen på gatewayen eller personen som kan rulle tilbake ein dårleg oppdatering.

Port fire: godta arbeidsbelastninga, ikkje handtrykket

Akseptkriteria bør skildre kva brukarane gjer. Å nå ein intern applikasjon, å slå opp det private namnet, å bli avvist på ein uautorisert destinasjon og å følgje den definerte åtferda når tunnelen er nede er alle observerbare, og eit vellukka handtrykk er ingen av dei.

Køyr desse kontrollane gjennom eit nettverksbyte, ein omstart av eininga og eit vedlikehaldsvindauge for gatewayen, fordi det er i desse overgangane utrullingar knekk.

Oppbevar prova ved sida av kriteria, inkludert den lokale tilstanden som produserte dei:

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

Ein grøn test på eit roleg nett med éi berebile maskin er ein innleiande observasjon. Det er ikkje ein påstand om pålitelegheit, og å behandle han som ein er måten eit design som verkar blir eit design ein kan stole på.

Relaterte artiklar