Kopiert WireGuard-profil: hvorfor begge enhetene svikter
En kopiert profil dupliserer nøkkelen, ikke enheten. Gå gjennom håndtrykksloggen, bekreft den delte identiteten og utsted deretter en ny på riktig måte.
Tunnelen fungerte på den bærbare datamaskinen, så konfigurasjonsfilen ble kopiert til telefonen og nettbrettet, og nå kommer og går håndtrykkene på alle tre. Ingenting ble skrevet feil, og serverkonfigurasjonen ble ikke redigert. En WireGuard-profil er ikke en konto med passord som flere enheter kan bruke; det er et nøkkelpar, og bare den offentlige halvdelen identifiserer en peer. Kopiering av filen kopierer identiteten, så serveren prøver nå å holde ett endepunktforhold for flere enheter som alle hevder å være den samme. Fra serverens side er det ingen andre enheter å legge merke til, bare en peer hvis adresse stadig flytter seg.
Start med håndtrykksloggen på hver enhet
Åpne klienten på hver enhet og noter tidspunktet for siste håndtrykk og gjeldende endepunkt før du endrer noe. I et sunt oppsett holder disse verdiene seg stabile mens en enhet er i bruk; med en duplisert identitet veksler tidsstemplene, og endepunktet som er registrert på serveren, kan beskrive en annen enhet enn den som har profilen. Den vekslingen er signaturen, og den forklarer hvorfor symptomet ser ut som ustabil tilkobling og ikke en konfigurasjonsfeil. Enhetene er ikke ødelagte; de avbryter hverandre.
Gjør lesingen på enhetene selv, slik at hver observasjon er knyttet til en bestemt maskin. Et tidsstempel som er kopiert fra en støttechat, mister den koblingen og er lite verdt etterpå.
Bekreft om to enheter deler én identitet
Sammenlign de offentlige nøklene, aldri de private. Den offentlige nøkkelen utledes fra den private, så to profiler med samme private nøkkel gir samme offentlige nøkkel og er ugjenkjennelige for serveren. Hvis to enheter rapporterer samme offentlige nøkkel, er spørsmålet avgjort, og ingen keepalive-justering vil hjelpe. To forskjellige nøkler med ustabile håndtrykk peker et helt annet sted, og derfor må sammenligningen komme før enhver endring.
wg show wg0 public-key
wg show wg0 latest-handshakes
wg show wg0 endpoints
wg show wg0 transfer
Disse kommandoene skriver bare ut offentlig materiale og tellere, og det er alt en støttesamtale trenger. En peer-oppføring på serveren med én offentlig nøkkel og et endepunkt som stadig flytter seg mellom to nettverk, er det forventede resultatet av dupliseringen, fordi en autentisert pakke fra en ny kilde oppdaterer hvor trafikken sendes. Den oppførselen er protokollen som virker som designet, og derfor blir den så lett forvekslet med en nettverksfeil.
Provisioner en andre identitet på riktig måte
Generer et nytt nøkkelpar på enheten som trenger det, og legg deretter den resulterende offentlige nøkkelen til på serveren som en egen peer med egne tillatte adresser. Den private nøkkelen bør opprettes på enheten og bli der; en nøkkel som genereres andre steder og limes inn, har reist gjennom minst ett ekstra sted, og den reisen er nå en del av tillitshistorien.
umask 077
wg genkey > newdevice.key
wg pubkey < newdevice.key
Serversiden trenger den offentlige nøkkelen pluss en tildeling av tillatt adresse som ikke kolliderer med den opprinnelige enheten. En profil som beholder den gamle tunneladressen mens den presenterer en ny nøkkel, gir en peer som serveren kanskje godtar og deretter ruter feil, noe som er en mer subtil feil enn et avvist håndtrykk. Sjekk adressetildelingen før du kobler til, ikke etter det første forvirrende pakketapet.
Fas ut duplikatet uten å ødelegge originalen
Når den nye identiteten fungerer, fjerner du den kopierte profilen fra omgivelsene til den opprinnelige enheten i stedet for å slette serveroppføringen som originalen fortsatt bruker. Hvis kopien kan ha blitt eksponert, tilbakekaller du den i stedet umiddelbart og utsteder deretter en ny; bekvemmelighet er ikke grunn til å la en delt hemmelighet sirkulere.
En administrert tjeneste som virkelig støtter flere enheter per abonnement, vil si det og utstede separate legitimasjoner fra sitt eget grensesnitt. Manuell duplisering av én profil er aldri den modellen, selv når tjenestens merkevare antyder ubegrensede enheter.
Test begge enhetene hver for seg og sammen
Verifiser hver enhet for seg først: håndtrykk, overføringstellere som beveger seg, og en destinasjon som bare tunnelen kan nå. Kjør deretter begge samtidig og se hvordan serveren oppfatter endepunktene; to forskjellige nøkler bør gi to stabile peer-oppføringer i stedet for én som hopper.
Oppbevar de nye offentlige nøklene sammen med distribusjonsnotatene og noter hvilken enhet som har hvilken. Uten den listen gjentar den neste personen som kopierer en profil den samme feilen, og de vekslende håndtrykkene vil igjen bli lagt på nettverket.