Så återkallar du en förlorad VPN-enhet: nyckel, certifikat eller konto
En förlorad enhet är tre identiteter på en gång: en WireGuard-peer-nyckel, ett klientcertifikat och en kontosession. Återkalla den som din server kontrollerar.
Din bärbara dator är borta, och VPN:en listar den fortfarande som klient. Den brådskande frågan är inte hur du raderar profilen på en maskin du inte längre har, utan vilken identitet servern fortfarande accepterar. WireGuard kontrollerar en offentlig nyckel, en PKI-baserad OpenVPN konfiguration kontrollerar ett klientcertifikat, och en VPN med SSO kontrollerar ett konto och dess sessionstoken. Dessa tre återkallas på olika ställen och med olika hastighet, och att laga en medan man ignorerar de andra är hur en förlorad enhet förblir ansluten.
Tre identiteter och vad var och en styr
Varje mekanism svarar på en annan fråga. En peer-nyckel svarar på om detta är maskinen du registrerade. Ett certifikat svarar på om det signerades av din CA och inte har återkallats. Ett konto svarar på om den här personen autentiserade sig tillräckligt nyligen. En utrullning som staplar två av dem, till exempel certifikat plus kataloginloggning, stänger dörren först när varje lager som utfärdade något till enheten har fått besked att sluta acceptera det.
Den praktiska fällan är att den saknade maskinen håller den privata halvan av varje legitimationsuppgift, så inget du gör lokalt når servern.
WireGuard: ta bort peeren, eftersom det inte finns någon återkallningslista
WireGuard för ingen blockeringslista. Gränssnittet accepterar exakt de offentliga nycklar som konfigurerats som peers, så återkallning är borttagning: kör wg set wg0 peer <public-key> remove, formen som dokumenteras i wg(8), och ta sedan bort motsvarande [Peer]-block från wg0.conf. Gör båda. En borttagning bara i körtid överlever till nästa omstart eller konfigurationsomladdning, då filen sätter tillbaka nyckeln.
Befintliga sessioner behöver ingen timer för att dö. Att ta bort peeren släpper dess handskakning och nyckelmaterial, så trafiken stannar så snart ett giltigt nyckelpar krävs igen. Kontrollera wg show wg0 latest-handshakes på servern: posten för den förlorade nyckeln bör försvinna och förbli borta, medan de andra peerarna fortsätter rapportera färska epoker.
En varning betyder mer än den verkar. Om den förlorade enheten delade en nyckel med andra enheter eftersom någon kopierade en konfigurationsfil, kopplar borttagningen av den nyckeln bort dem alla; det är fortfarande rätt drag, och du utfärdar därefter nycklar per enhet i stället för att återställa den delade.
Certifikat: en CRL räknas bara om daemonen läser den
Certifikatbaserad åtkomst lägger till ett steg som folk hoppar över. easyrsa revoke laptop-01 markerar certifikatet som återkallat i CA-databasen, men VPN:en lär sig inget från den databasen. Därefter kör du easyrsa gen-crl för att skriva crl.pem, kopierar det till sökvägen som anges i serverns crl-verify-alternativ och bekräftar att den körande daemonen använder den nya filen. Återkallning utan att återskapa och distribuera CRL:en är verkningslös.
Timing är den andra halvan. En CRL konsulteras när en klient ansluter eller omförhandlar, så en etablerad tunnel kan fortsätta vidarebefordra till dess. Om enheten måste stängas av omedelbart, avsluta den sessionen uttryckligen via OpenVPN:s administrationsgränssnitt i stället för att vänta på nästa handskakning. Att ladda om eller starta om tjänsten, beroende på hur utrullningen laddar CRL:en, är en del av ändringen och inte ett valfritt tillägg.
Det är värt att göra verifieringen från en annan maskin: presentera det återkallade certifikatet och förvänta dig ett handskakningsfel, vanligtvis VERIFY ERROR: depth=0, error=certificate revoked. Om anslutningen ändå lyckas läser klienten en annan CRL än den du uppdaterade.
Konton och sessioner: inaktivering är inte samma sak som utkastning
Katalog- eller SSO-inloggningar kontrolleras vid autentiseringstillfället. Inaktivering av kontot blockerar nästa inloggning, men uppdateringstoken och den etablerade tunneln kan fortsätta fungera tills de löper ut. Återkalla sessionerna och tokens för den användaren, eller höj en sessionsversion om identitetsleverantören stöder det. Ta också bort den förlorade enheten från MFA-registreringen, eftersom en registrerad autentiserare är en egen åtkomstväg.
RADIUS-baserade VPN:er kan skicka ett frånkopplingsmeddelande eller en behörighetsändring för att släppa en aktiv session, men inte alla nätverksåtkomstservrar respekterar det. Vid tvekan, avsluta användarens session från serversidan och bekräfta i loggarna att den gamla sessionen stängdes.
Ordning för de närmaste timmen
Börja med inventariet, inte klienten: lista varje identitet som är knuten till enheten, antingen det är peer-nyckel, certifikatserienummer eller konto. Återkalla i varje utfärdande system i den ordning anslutningen byggs, alltså konto först, därefter certifikat, därefter peer. Bevisa sedan avvisandet från en maskin du kontrollerar.
Två uppföljningar är lätta att glömma. För det första, rotera allt annat enheten hade, särskilt SSH-nycklar, molnkonsolens inloggningsuppgifter och en delad förhandsdelad WireGuard-nyckel. För det andra, kontrollera att konfigurationshantering, ögonblicksbilder eller guldavbildningar inte kan återinföra den borttagna klienten vid nästa ombyggnad.
Den varaktiga lösningen är en identitet per enhet. När varje bärbar dator bär sin egen peer-nyckel eller sitt eget certifikat, kostar en förlust ett återkallningskommando och en nyutfärdning i stället för en ombyggnad av hela flottan.