Introduksjon
Fjerne Linux SSH-nøkkel er en kritisk prosess, spesielt når vi ønsker å slette eller endre SSH-nøkkelen. Vi kan ønske å annullere nøkler for å øke sikkerheten i SSH-tilkoblingene våre eller for å gå over til en ny SSH sikkerhetskonfigurasjon. I denne artikkelen vil vi se på hvilke metoder som kan brukes for å fjerne SSH-nøkler, hvilke fordeler og ulemper det medfører, samt mulige alternative løsninger. Vi vil også styrke prosessen med praktiske eksempler og besvare vanlige spørsmål til slutt.
1. SSH-nøkkel: Hva er det og hvorfor bør den fjernes?
SSH (Secure Shell) er en protokoll og et verktøysett som muliggjør sikker tilkobling til eksterne servere. Metoden "nøkkelbasert autentisering" gir en sikker og praktisk bruk. Det kan være nødvendig å fjerne Linux SSH-nøkkelen i følgende situasjoner:
- Sikkerhet: Hvis du er bekymret for at nøkkelen din har blitt lekket eller er laget med utdaterte algoritmer.
- Brukerendring: Situasjoner som overføring av serveren, en ny medlem i teamet, eller oppheving av tilgang for en spesialist som har forlatt prosjektet.
- Ny konfigurasjon: Gjenopprette nøkler for mer robuste algoritmer (f.eks. Ed25519) eller en annen SSH sikkerhetskonfigurasjon.
Fjerning av SSH-nøkkel kan også være en del av regelmessige sikkerhetspolicyer, ikke bare for risikofylte situasjoner. Å slette ubrukte eller unødvendige nøkler reduserer potensielle angrepsvektorer.
2. Fjerne SSH-nøkkel: Grunnleggende trinn
For å fjerne SSH-nøkkelen eller annullere den, må man vanligvis se på to forskjellige punkter:
- Slette nøkler på lokal maskin: Vanligvis fjerning av private (private) og offentlige (public) nøkler i
~/.ssh/mappen. - Slette registrerte nøkler på fjernserver: Rydde opp i radene i
~/.ssh/authorized_keysfilen på serversiden.
Disse to prosessene må utføres synkront. Hvis du sletter din lokale nøkkel, men informasjonen på serveren fortsatt er der, kan en angriper fortsatt utgjøre en risiko hvis de får tilgang til serveren.
2.1 Fjerne lokal nøkkel
På Linux eller macOS-systemer finnes SSH-nøkkelpar vanligvis i ~/.ssh mappen. Eksempler:
~/.ssh/id_rsa(Privat nøkkel)~/.ssh/id_rsa.pub(Offentlig nøkkel)~/.ssh/id_ed25519(Privat nøkkel)~/.ssh/id_ed25519.pub(Offentlig nøkkel)
Det er viktig å være forsiktig når du sletter. Hvis navngivningen er gjort med et spesifikt navn (f.eks. mycustomkey osv.), må du identifisere de riktige filene. Et eksempel på kommando er som følger:
cd ~/.ssh/
rm id_rsa id_rsa.pub
# eller
rm id_ed25519 id_ed25519.pub
Hvis du går over til et nytt prosjekt eller jobber med en annen bruker, er det tilstrekkelig å slette disse filene. Men hvis du jobber med flere nøkler på én server, må du være forsiktig så du ikke sletter feil fil.

2.2 Fjerne nøkkel fra fjernserver
Når du går til trinnet for å fjerne Linux SSH-nøkkel fra serveren, må du slette raden til brukeren du er logget inn med i ~/.ssh/authorized_keys filen. Du kan utføre prosessen som følger:
# Logg inn på serveren.
ssh [email protected]
# Gå deretter til hjemmemappen og åpne authorized_keys-filen
nano ~/.ssh/authorized_keys
# Finn og fjern raden du vil slette.
For eksempel, innholdet i id_rsa.pub vises som en lang rad i authorized_keys. Identifiser denne raden og fjern den helt. Når du lagrer og avslutter, vil den nøkkelen ikke lenger ha tilgang til serveren.
2.3 En spesiell metode: ssh-copy-id
ssh-copy-id brukes vanligvis for å legge til nøkler. Imidlertid har den ikke en innebygd "fjern" opsjon. Likevel må de nøklene som er lagt til med ssh-copy-id, manuelt slettes fra radene i authorized_keys. Det støttes ikke direkte med en kommando som ssh-copy-id -r for å fjerne. Derfor må du rydde opp i authorized_keys ved hjelp av en teksteditor eller et skript.
3. Fordeler og ulemper ved å fjerne Linux SSH-nøkkel
Før man utfører en prosedyre, er det nyttig å vurdere fordeler og ulemper, noe som kan bidra til å unngå potensielle problemer. Her er fordelene og ulempene ved nøkkelslettingsprosessen:
3.1 Fordeler
- Økt sikkerhet: Ved å annullere gamle nøkler som ikke lenger brukes eller som kan ha blitt kompromittert, reduseres det potensielle angrepsflaten.
- Ryddig administrasjon: Du kan enkelt avslutte tilgangen til personer som har forlatt teamet, noe som øker administrerbarheten.
- Regelmessige oppdateringer: Regelmessig sletting og gjenopprettelse kan sikre at du bruker moderne krypteringsalgoritmer kontinuerlig.
3.2 Ulemper
- Feil nøkkelsletting: Å slette feil fil eller rad kan føre til tap av tilgang til systemene.
- Midlertidig tap av tilgang: Uerfarne brukere kan ha vanskeligheter med å gjenopprette tilkoblingen under prosessen.
- Arbeidskostnader: Å administrere denne prosessen for mange servere eller brukere kan være tidkrevende.
Derfor er det viktig å være oppmerksom på uventede risikoer, i tillegg til fordelene, og å utføre prosessene planlagt og forsiktig.
4. Alternative eller ytterligere metoder
I tillegg til å fjerne SSH-nøkler, finnes det ulike tilnærminger. Å gjennomgå dette avsnittet kan gi fordeler i visse spesielle scenarier:
4.1 Oppdateringer av passphrase
Hvis du ønsker å endre bare passordet for nøkkelen basert på SSH sikkerhetskonfigurasjon, kan du bruke kommandoen ssh-keygen -p for å oppdatere passphrase. Dette hever sikkerhetsnivået uten å måtte slette nøkkelen helt.
4.2 Nokkel revokasjonsliste (KRL)
I OpenSSH versjon 6.2 og nyere er det en funksjon for Nokkel Revokasjonsliste (KRL). Dette gjør at du kan opprettholde en liste over hvilke nøkler som er ugyldige, eller hvilke sertifikater som ikke vil bli akseptert på serveren. KRL kan opprettes med kommandoer som ssh-keygen -k -f revoked_keys, og SSH kan konfigureres deretter.
4.3 Blokering med SSH konfigurasjonsfil
På serveren kan noen parametere i /etc/ssh/sshd_config blokkere brukere eller bestemte nøkkeltyper. For eksempel kan innstillingen PasswordAuthentication no tillate kun nøkkelbasert tilgang, og du kan opprette forskjellige policyer for DMZ eller testsystemer. Men dette er en metode som endrer den generelle tilgangsprotokollen i stedet for å "slette" nøkler.
5. Eksempler og tips
La oss se på noen eksempler på hvordan du kan gå frem:
- Utviklingsteam eksempel: Du har et team på 5 personer. For en person som har forlatt, kan det være tilstrekkelig å slette bare hans rad i
authorized_keysfilen. I tillegg bør hans lokale private key også slettes. - Serveroverføring: Når infrastrukturen endres, kan du annullere alle SSH-nøkler på den gamle serveren og bruke bare oppdaterte nøkler på den nye serveren. Dette sikrer at eventuelle sårbarheter i de deaktiverte systemene ikke gjenopptas.
- Nødsituasjonsscenario: Hvis det er mistanke om at en nøkkel har blitt lekket eller stjålet, kan du umiddelbart fjerne Linux SSH-nøkkel for å forhindre uautorisert tilgang. Du kan deretter opprette en ny nøkkel og legge den til for å koble deg til systemet.
Dessse eksemplene viser hvor kritisk beslutningen om å fjerne nøkler kan være i ulike størrelser og situasjoner.
6. Eksterne og interne lenker
Hvis du trenger mer omfattende informasjon om SSH, kan du besøke OpenSSHs offisielle nettsted (DoFollow) for all dokumentasjonen.
Du kan også se på forskjellige konfigurasjonseksempler under vår Linux kategori på nettstedet vårt.
7. Sammendrag og konklusjon
Fjerne Linux SSH-nøkkel er en av de nødvendige trinnene for sikkerhet og administrerbarhet. Du kan ønske å slette SSH-nøkkelen av årsaker som sikkerhetsbrudd, endringer i teamet eller bare for å opprettholde orden. Prosessen består i hovedsak av to trinn: Rengjøre nøklene lokalt og fjerne de relevante radene i authorized_keys filen på serveren.
Det anbefales å være forsiktig i denne fasen, å administrere SSH sikkerhetskonfigurasjon prosessene med en skriftlig policy, og å sikre koordinasjon mellom teammedlemmene. Å bruke moderne kryptografiske metoder, gjøre periodiske kontroller og deaktivere ubrukte nøkler, gir et viktig vern mot cyberangrep. Husk, en liten forsømmelse kan åpne døren for store datainnbrudd.
Ofte stilte spørsmål
1. Må systemet være åpent for å fjerne Linux SSH-nøkkel?
Som regel ja. For å slette SSH-nøkkelen må du ha tilgang til serveren. Når sesjonen er åpen, kan du redigere authorized_keys filen, og deretter slette filene i ~/.ssh mappen lokalt. Men hvis du har tilgang via en annen metode (for eksempel root-konsollen), kan du også gjøre endringer uten å være logget inn.
2. Hva bør jeg gjøre for å koble meg igjen etter å ha fjernet SSH-nøkkelen?
Hvis du har slettet den gamle nøkkelen, vil det ikke være mulig å koble til med den nøkkelen lenger. Hvis du planlegger en ny SSH sikkerhetskonfigurasjon, må du opprette nye nøkler med ssh-keygen kommandoen og legge til den offentlige nøkkelen i authorized_keys filen på serveren.
3. Jeg bruker samme nøkkel på flere servere, bør jeg fjerne den fra alle?
Hvis du ønsker å deaktivere nøkkelen helt, så ja, du må også slette registreringene i authorized_keys på alle serverne. Ellers kan det fortsatt være tilgang til forskjellige servere.