Uvod
Uklanjanje Linux SSH ključeva je veoma važan korak, posebno kada želimo izbrisati ili promijeniti SSH ključ. Možda ćemo htjeti da opozovemo ključeve kako bismo povećali sigurnost naših SSH veza ili prešli na novu SSH sigurnosnu konfiguraciju. U ovom članku razmotrit ćemo koje metode se mogu koristiti za uklanjanje SSH ključeva, koje su njihove prednosti i nedostaci, kao i moguće alternativne solucije. Također, uključit ćemo praktične primjere kako bismo pojasnili procese, a na kraju ćemo odgovoriti na često postavljana pitanja.
1. Šta je SSH ključ i zašto ga treba ukloniti?
SSH (Secure Shell) je protokol i skup alata koji omogućava sigurnu vezu sa udaljenim serverima. Metoda “autentifikacije zasnovane na ključevima” pruža sigurnu i praktičnu upotrebu. Postoje određeni razlozi zbog kojih bi proces uklanjanja Linux SSH ključeva mogao biti potreban:
- Sigurnost: Ako sumnjate da je vaš ključ kompromitiran ili je stvoren starim algoritmima.
- Promjena korisnika: Situacije kao što su primanje novog člana tima, prenos servera, ili uklanjanje pristupa stručnjaku koji napušta projekt.
- Nova konfiguracija: Kreiranje novih ključeva za jače algoritme (npr. Ed25519) ili drugačiju SSH sigurnosnu konfiguraciju.
Uklanjanje SSH ključeva može se primjenjivati ne samo u rizičnim situacijama, već i kao dio redovnih sigurnosnih politika. Brisanje neaktivnih ili nepotrebnih ključeva smanjuje moguće vektore cyber napada.
2. Osnovni koraci za uklanjanje SSH ključa
Da biste izbrisali ili opozvali SSH ključ, obično je potrebno pogledati na dva različita mjesta:
- Brisanje ključeva sa lokalnog računara: Obično se radi o uklanjanju privatnih (private) i javnih (public) ključeva iz direktorija
~/.ssh/. - Brisanje registrovanih ključeva sa udaljenog servera: Čišćenje linija u datoteci
~/.ssh/authorized_keysna strani servera.
Oba ova procesa trebaju biti usklađena. Ako izbrišete lokalni ključ, a informacije na serveru ostanu, napadač može i dalje imati pristup ukoliko se domogne podataka na serveru.
2.1 Uklanjanje lokalnog ključa
Na Linux ili macOS sistemima, SSH ključevi se obično nalaze u ~/.ssh folderu. Na primjer:
~/.ssh/id_rsa(Privatni ključ)~/.ssh/id_rsa.pub(Javni ključ)~/.ssh/id_ed25519(Privatni ključ)~/.ssh/id_ed25519.pub(Javni ključ)
Treba biti oprezan prilikom brisanja. Ako je naziv ključa prilagođen nekim posebnim imenom (mycustomkey itd.), trebate tačno identifikovati prave datoteke. Komanda za brisanje izgleda ovako:
cd ~/.ssh/
rm id_rsa id_rsa.pub
# ili
rm id_ed25519 id_ed25519.pub
Za nove projekte ili ako radite sa drugim korisnikom, dovoljno je da izbrišete ove datoteke. Međutim, ako radite s više ključeva na istom serveru, trebate biti pažljivi da ne izbrišete pogrešnu datoteku.

2.2 Uklanjanje ključa sa udaljenog servera
Kada prelazite na korak uklanjanja Linux SSH ključa sa servera, treba da obrišete liniju sa registrovanog korisnika u datoteci ~/.ssh/authorized_keys na udaljenoj mašini. Ovo možete uraditi na sljedeći način:
# Prijavite se na server.
ssh [email protected]
# Nakon toga idite na svoju home direktoriju i otvorite authorized_keys datoteku
nano ~/.ssh/authorized_keys
# Pronađite i uklonite liniju koju želite izbrisati.
Na primjer, sadržaj id_rsa.pub će biti prikazan kao dugačka linija unutar authorized_keys. Identifikujte ovu ili bilo koju drugu liniju i uklonite je potpuno. Kada sačuvate i izađete, taj ključ više neće imati dozvolu za pristup serveru.
2.3 Posebna metoda: Uklanjanje sa ssh-copy-id
ssh-copy-id se obično koristi za dodavanje ključeva. Međutim, opcija “uklanjanje” nije ugrađena. Ipak, ključevi dodani pomoću ssh-copy-id se podudaraju s određenim linijama u authorized_keys datoteci, što znači da je potrebno ručno izbrisati te linije. Izravno korištenje komande ssh-copy-id -r za uklanjanje nije podržano. Stoga, možete koristiti uređivač ili pripremiti skriptu kako biste očistili authorized_keys.
3. Prednosti i nedostaci uklanjanja Linux SSH ključa
Prije nego što izvršite neku operaciju, korisno je razmotriti njene pozitivne i negativne aspekte kako biste izbjegli potencijalne probleme. Evo prednosti i nedostataka procesa uklanjanja ključeva:
3.1 Prednosti
- Povećanje sigurnosti: Opozivanjem starih ključeva koji nisu u upotrebi ili za koje postoji mogućnost da budu kompromitirani smanjujete potencijalnu površinu napada.
- Čista administracija: Lako možete ukinuti pristup članovima tima koji su otišli, što povećava upravljivost.
- Redovno ažuriranje: Redovnim brisanjem i ponovnim kreiranjem ključeva osiguravate da stalno koristite moderne šifrirane algoritme.
3.2 Nedostaci
- Pogrešno brisanje ključeva: Brisanje pogrešne datoteke ili linije može vas dovesti do gubitka pristupa sistemima.
- Privremeni gubitak pristupa: Tokom operacije, neiskusni korisnici mogu imati poteškoća u ponovnom povezivanju.
- Cijena radne snage: U upravljanju ovim procesom za veliki broj servera ili korisnika potrebno je vrijeme.
Stoga, osim prednosti, trebate uzeti u obzir i nepredviđene rizike i provoditi procese planirano i pažljivo.
4. Alternativne ili dodatne metode
Pored uklanjanja SSH ključeva, postoje i alternativni pristupi. Istraživanje ovog dijela može donijeti prednosti u nekim posebnim scenarijima:
4.1 Ažuriranje passphrase-a
Ako želite samo promijeniti lozinku za ključ kao osnovu SSH sigurnosne konfiguracije, možete koristiti komandu ssh-keygen -p za ažuriranje passphrase-a. Ovo povećava nivo sigurnosti bez potrebe za potpunim uklanjanjem ključa.
4.2 Lista revokacije ključeva (KRL)
U verzijama OpenSSH 6.2 i višim, dostupna je opcija Lista revokacije ključeva (KRL). Na serveru možete održavati popis koji ključevi su nevažeći ili koje certifikate ne treba prihvatati. KRL se može kreirati koristeći komande poput ssh-keygen -k -f revoked_keys, a SSH se može konfigurirati u skladu s tim.
4.3 Zabrana putem SSH konfiguracijske datoteke
Na strani servera, možete blokirati korisnike ili određene tipove ključeva koristeći određene parametre u datoteci /etc/ssh/sshd_config. Na primjer, koristeći podešavanje PasswordAuthentication no, možete dozvoliti samo pristup zasnovan na ključevima, dok možete odrediti drugačije politike za DMZ ili testne sisteme. Međutim, ovo je metod koji mijenja opšti pristupni protokol umjesto da jednostavno “uklanja ključ”.
5. Konkretni primjeri i savjeti
Pogledajmo par primjera kako biste mogli napredovati:
- Primjer za tim za razvoj: Imate tim od 5 osoba. Za osobu koja odlazi, dovoljno je izbrisati samo njenu liniju iz
authorized_keysdatoteke. Također, njihov lokalni privatni ključ bi trebao biti izbrisan. - Prenos servera: Kada se mijenja infrastruktura, opozovete sve SSH ključeve sa starog servera i koristićete samo aktuelne ključeve na novom serveru. Na taj način, sigurnosne rupe onemogućenih sistema neće ponovno biti otvorene.
- Slučaj hitne situacije: Ako sumnjate da je ključ kompromitovan ili ukraden, odmah provodite uklanjanje Linux SSH ključeva kako biste spriječili neovlašteni pristup. Potom možete stvoriti novi ključ i dodati ga za povezivanje sa vašim sistemom.
Ovi primjeri pokazuju koliko je ključno odlučiti o uklanjanju u različitim razmjerama i situacijama.
6. Vanjske i unutarnje poveznice
Ako vam je potrebna sveobuhvatna informacija o SSH-u, možete pristupiti svim dokumentima preko Upravnog sajta OpenSSH (DoFollow).
Također, možete pogledati različite primjere konfiguracije u našoj Linux kategoriji na sajtu.
7. Sažetak i Zaključak
Uklanjanje Linux SSH ključeva je neizbježan korak što se tiče sigurnosti i upravljivosti. Razlozi zbog kojih možete poželjeti izbrisati SSH ključ uključuju sigurnosne incidece, promjene unutar tima ili jednostavno potrebe za uspostavljanjem reda. Proces uglavnom obuhvata dva koraka: čišćenje vaših lokalnih ključeva i uklanjanje odgovarajućih linija u authorized_keys datoteci na serveru.
Preporučuje se da postupate pažljivo, da vaše SSH sigurnosne konfiguracije budu vođene pisanim politikama i da osigurate koordinaciju unutar tima. Korištenjem ažuriranih kriptografskih metoda, redovnom provjerom i onemogućavanjem neupotrebljivih ključeva stvarate značajnu zaštitu od cyber napada. Zapamtite, mala greška može otvoriti vrata velikim povredama podataka.
Često postavljana pitanja (FAQ)
1. Da li je potrebno biti prijavljen za uklanjanje Linux SSH ključa?
Generalno, da. Da biste izbrisali SSH ključ, morate imati pristup serveru. Ako ste prijavljeni, možete uređivati datoteku authorized_keys ili brisati datoteke iz ~/.ssh direktorija na lokalnoj mašini. Ipak, ako imate pristup putem drugačijeg načina (npr. root konzola), možete izvršiti izmene i bez prijavljivanja.
2. Šta da radim da se ponovo povežem nakon uklanjanja SSH ključa?
Ako ste izbrisali stari ključ, više nećete moći koristiti taj ključ za povezivanje. Ako planirate novu SSH sigurnosnu konfiguraciju, trebate kreirati nove ključeve korištenjem ssh-keygen komande i dodati javni ključ u datoteku authorized_keys na serveru.
3. Da li da uklonim isti ključ sa svih servera na kojima ga koristim?
Ako želite potpuno onemogućiti ključ, da, morate izbrisati zapise iz authorized_keys na svim serverima. U suprotnom, još uvijek ćete imati pristup preko različitih servera.