Identiteten forsvinder fra det kørende interface, og ændringen ser færdig ud. Når tjenesten genstarter, er den tilbage, hvilket ser ud som om WireGuard ignorerer kommandoen. Det, der faktisk skete, er enklere: opstartskonfigurationen indeholder stadig peer'en.

To tilstande holder den liste. Tilbagekaldelse er kun reel, når begge mister den.

Hvad wg set faktisk ændrer

Kommandoen wg set wg0 peer <public-key> remove redigerer det kørende interface i kernen. Den skriver intet til disken. Konfigurationsfilen, NetworkManager-profilen eller routerens gemte tilstand er urørt. Det er designet, ikke en fejl.

Adskillelsen er bevidst, fordi værktøjet ikke aner, hvem der ejer interfacet. En kommando under kørsel skal være sikker mod et interface, som noget andet styrer. Den kan ikke gætte, hvor den holdbare kopi bor. Konsekvensen er let at sige: en fjernelse under kørsel er midlertidig af konstruktion.

Så peer'en vender tilbage ved næste genstart, og den vender tilbage med sine oprindelige tilladte præfikser. Alt, der routes gennem den, genskabes også. En angiveligt tilbagekaldt identitet kan derfor nå sine tidligere destinationer efter en genindlæsning. Intet i outputtet under kørsel advarede nogen.

Find skriveren, før du redigerer en fil

Interfacet har en ejer. Det kan være wg-quick, der læser en fil, NetworkManager, der anvender en profil, routerens egen interfacekonfiguration eller et container-entrypoint, der genskaber interfacet ved start. At redigere en fil, som ejeren aldrig læser, giver slet ingen varig ændring.

Start fra det kørende interface, og identificér de offentlige nøgler, da navne og adresser er svagere identifikatorer end nøglen selv. Sammenlign derefter listen med den gemte konfiguration, som ejeren faktisk læser.

wg show wg0 peers
wg show wg0 allowed-ips
systemctl status wg-quick@wg0 --no-pager
ls -l /etc/wireguard

Et levende interface, hvis peer-liste og filindhold er uenige, er hele diagnosen. Den gemte konfiguration vinder ved opstart, og tilstanden under kørsel taber. Sammenlign dem, før du ændrer nogen af dem.

SaveConfig-fælden

wg-quick tilføjer en fold, der fanger folk, som redigerer filer i hånden. Når SaveConfig er aktiveret, skriver dens dokumenterede nedlukningsadfærd den aktuelle tilstand under kørsel tilbage over konfigurationsfilen.

Det vender den sædvanlige retning af vedholdenhed. Du fjerner en peer fra filen, og så stopper tjenesten. Den kørende tilstand skrives tilbage over din redigering og gendanner den peer, du netop slettede.

Derfor betyder rækkefølgen noget: rediger filen, mens interfacet er nede, eller deaktiver SaveConfig før redigeringen, og bring derefter interfacet op igen og bekræft, hvad der blev indlæst. En håndredigering med interfacet oppe er et kapløb med nedlukningsskrivningen.

Ændr begge tilstande, genindlæs derefter

Under kørsel fjernes peer'en via nøglen. I den gemte konfiguration fjernes samme blok gennem ejerens understøttede operation i stedet for at redigere uden om den.

Gennemgå derefter, hvad peer'en bar. Et routet netværk, der tilhørte den tilbagekaldte identitet, bør tildeles bevidst igen eller fjernes, ikke stiltiende arves af den peer, der redigeres næste gang.

Hold en gendannelsesvej åben, hvis gatewayen også bærer din administrative adgang. En genstart, der fjerner den forkerte peer, er et selvforvoldt udfald. Det samme gælder en genstart, der fjerner den forkerte rute.

Sådan ser en bestået test ud

Genindlæs eller genstart tjenesten, og læs derefter peer-listen igen. Den gamle nøgle skal være væk, og de peers, du ville beholde, skal stadig være til stede og fungere.

wg show wg0 peers
wg show wg0 allowed-ips
sudo wg-quick down wg0 && sudo wg-quick up wg0
wg show wg0 peers

Hvor situationen tillader det, bekræft at den gamle identitet ikke længere når sine tidligere ressourcer. En ryddelig interfaceliste før en genstart er halvdelen af en test. Den anden halvdel er, hvad identiteten stadig kan gøre bagefter.

Hvis en manager bliver ved med at gendanne peer'en, så stop med at gentage fjernelsen på lavt niveau. Ret det inventar, som skriveren læser, for indtil da er hver genstart endnu en invitation til, at identiteten dukker op igen.

Relaterede artikler