Den bærbare maskinen din er borte, og VPN-en fører den fortsatt opp som klient. Det presserende spørsmålet er ikke hvordan du sletter profilen på en maskin du ikke lenger har, men hvilken identitet serveren fortsatt godtar. WireGuard kontrollerer en offentlig nøkkel, et PKI-basert OpenVPN oppsett kontrollerer et klientsertifikat, og en VPN med SSO kontrollerer en konto og sesjonstokenet dens. Disse tre tilbakekalles på forskjellige steder og med forskjellig hastighet, og å rette én mens man ignorerer de andre er måten en tapt enhet blir værende tilkoblet.

Tre identiteter og hva hver av dem styrer

Hver mekanisme svarer på et annet spørsmål. En peer-nøkkel svarer på om dette er maskinen du registrerte. Et sertifikat svarer på om det ble signert av CA-en din og ikke er tilbakekalt. En konto svarer på om denne personen autentiserte seg nylig nok. En utrulling som legger to av dem oppå hverandre, for eksempel sertifikat pluss kataloginnlogging, lukker døren bare når hvert lag som utstedte noe til enheten har fått beskjed om å slutte å godta det.

Den praktiske fellen er at den manglende maskinen holder den private halvdelen av hver legitimasjon, så ingenting du gjør lokalt når serveren.

WireGuard: fjern peeren, fordi det ikke finnes noen tilbakekallingsliste

WireGuard fører ingen blokkeringsliste. Grensesnittet godtar nøyaktig de offentlige nøklene som er konfigurert som peers, så tilbakekalling er sletting: kjør wg set wg0 peer <public-key> remove, formen som er dokumentert i wg(8), og slett deretter den samsvarende [Peer]-blokken fra wg0.conf. Gjør begge deler. En fjerning bare i kjøretid overlever til neste omstart eller konfigurasjonsinnlasting, da filen setter nøkkelen tilbake.

Eksisterende økter trenger ingen timer for å dø. Fjerning av peeren slipper håndtrykket og nøkkelmaterialet, så trafikken stopper så snart et gyldig nøkkelpar kreves igjen. Sjekk wg show wg0 latest-handshakes på serveren: oppføringen for den tapte nøkkelen skal forsvinne og bli borte, mens de andre peerne fortsetter å rapportere nylige epoker.

Ett forbehold betyr mer enn det ser ut som. Hvis den tapte enheten delte en nøkkel med andre enheter fordi noen kopierte én konfigurasjonsfil, kobler fjerningen av den nøkkelen dem alle fra; det er fortsatt riktig trekk, og du utsteder deretter nøkler per enhet i stedet for å gjenopprette den delte.

Sertifikater: en CRL teller bare hvis daemonen leser den

Sertifikatbasert tilgang legger til et trinn folk hopper over. easyrsa revoke laptop-01 markerer sertifikatet som tilbakekalt i CA-databasen, men VPN-en lærer ingenting fra den databasen. Deretter kjører du easyrsa gen-crl for å skrive crl.pem, kopierer det til banen som er angitt i serverens crl-verify-valg, og bekrefter at den kjørende daemonen bruker den nye filen. Å tilbakekalle uten å regenerere og distribuere CRL-en er virkningsløst.

Timing er den andre halvdelen. En CRL konsulteres når en klient kobler til eller reforhandler, så en etablert tunnel kan fortsette å videresende til da. Hvis enheten må kuttes av umiddelbart, avslutt den økten eksplisitt via administrasjonsgrensesnittet til OpenVPN i stedet for å vente på neste håndtrykk. Å laste inn eller starte tjenesten på nytt, avhengig av hvordan utrullingen laster CRL-en, er en del av endringen og ikke et valgfritt tillegg.

Verifiseringen er verdt å gjøre fra en annen maskin: presenter det tilbakekalte sertifikatet og forvent et håndtrykksfeil, vanligvis VERIFY ERROR: depth=0, error=certificate revoked. Hvis tilkoblingen fortsatt lykkes, leser klienten en annen CRL enn den du oppdaterte.

Kontoer og økter: deaktivering er ikke det samme som utkastelse

Katalog- eller SSO-innlogginger kontrolleres på autentiseringstidspunktet. Deaktivering av kontoen blokkerer neste innlogging, men oppfriskningstokenet og den etablerte tunnelen kan fortsette å virke til de utløper. Tilbakekall øktene og tokenene til den brukeren, eller øk en øktversjon hvis identitetsleverandøren støtter det. Fjern også den tapte enheten fra MFA-registreringen, siden en registrert autentiseringsapp er en egen tilgangsvei.

RADIUS-baserte VPN-er kan sende en frakoblingsmelding eller en autorisasjonsendring for å droppe en aktiv økt, men ikke alle nettverkstilgangsservere respekterer det. I tvil, avslutt brukerens økt fra serversiden og bekreft i loggene at den gamle økten ble lukket.

Rekkefølge for den neste timen

Start med inventaret, ikke klienten: list opp hver identitet knyttet til enheten, enten det er peer-nøkkel, sertifikatserienummer eller konto. Tilbakekall i hvert utstedende system i den rekkefølgen tilkoblingen bygges, altså konto først, deretter sertifikat, deretter peer. Bevis deretter avvisningen fra en maskin du kontrollerer.

To oppfølginger er lette å glemme. For det første, roter alt annet enheten hadde, særlig SSH-nøkler, skykonsoll-legitimasjon og en delt forhåndsdelt WireGuard-nøkkel. For det andre, kontroller at konfigurasjonsstyring, øyeblikksbilder eller gullavbildninger ikke kan gjeninnføre den fjernede klienten ved neste gjenoppbygging.

Den varige løsningen er én identitet per enhet. Når hver bærbar maskin bærer sin egen peer-nøkkel eller sitt eget sertifikat, koster et tap én tilbakekallingskommando og en nyutstedelse i stedet for en gjenoppbygging av hele flåten.

Relaterte artikler