Az SSH kulcs generálása Linuxon egyetlen paranccsal elvégezhető, és utána jelszó helyett kulccsal léphetsz be a szerverekre. A kulcspár két fájlból áll: a privát kulcsot nálad tartod, a nyilvános kulcsot a szerverre másolod. Ez az útmutató a generálástól a bejelentkezésig mindent végigvezet. Közben a tipikus hibákra is kitérünk.
- Az SSH kulcs generálása Linuxon az
ssh-keygenparanccsal megy. - Az Ubuntu dokumentációja az ed25519 típust ajánlja.
- A nyilvános kulcsot az
ssh-copy-idmásolja a szerverre. - A privát kulcsot soha ne oszd meg senkivel.
- A kulcsot érdemes jelszóval (passphrase) védeni.
Ha még nem csatlakoztál szerverre, olvasd el előbb: Hogyan használjuk a Remmina-t a távoli asztali munkához. Ez az útmutató a kulcsos belépésre koncentrál. A kulcsok kezelése a szerver védelmének első lépése.
Mi az az SSH kulcs, és mire jó?
Az SSH kulcs egy kulcspár: egy privát és egy nyilvános fájl, amely jelszó helyett azonosít a szerveren. A privát kulcs nálad marad, a nyilvános kulcsot a szerverre másolod. A szerver a nyilvános kulccsal ellenőrzi, hogy a belépő birtokolja-e a privát párját.
A kulcsos belépésnek két előnye van. A kulcs hosszabb és véletlenszerűbb, mint egy átlagos jelszó. A privát kulcs ráadásul sosem kerül át a hálózaton.
A jelszavas és a kulcsos belépés között három fő különbség van:
- Jelszóval a titkot be kell gépelned, a kulcsot a program használja helyetted.
- A jelszót ki lehet találni vagy ellopni, a kulcs hosszabb és véletlenszerű.
- A kulcsot fájlként kezelheted, ezért külön eszközönként visszavonható.
Gyakorlati tipp: minden eszközödhöz külön kulcsot készíts. Így egy elveszett laptop kulcsát külön törölheted a szerverről. A törléshez az authorized_keys fájlból kell eltávolítani a megfelelő sort.
Melyik SSH kulcstípust válaszd?
Új kulcshoz az Ubuntu dokumentációja az ed25519 típust ajánlja, mert rövidebb a kulcs és kisebb a számítási igény. Az RSA régebbi rendszerekkel való kompatibilitásra jó, ilyenkor a -b kapcsolóval a kulcsméretet is megadhatod. Az alábbi táblázat összefoglalja a lehetőségeket, a hozzájuk tartozó kapcsolókkal együtt.
| Típus | Kapcsoló | Megjegyzés |
|---|---|---|
| ed25519 | -t ed25519 | Az Ubuntu dokumentációja ezt ajánlja |
| RSA | -t rsa -b 4096 | Az Ubuntu példája, a kézikönyv alapmérete 3072 bit |
| ECDSA | -t ecdsa | Támogatott típus a kézikönyv szerint |
| Biztonsági kulcshoz | -t ed25519-sk | Hardveres biztonsági kulcs kell hozzá |
A legújabb OpenSSH-kézikönyv szerint az alapértelmezett típus az ed25519. Régebbi rendszereken ez eltérhet. Ezért a -t kapcsolót mindig add meg, így az SSH kulcs generálása Linuxon nem múlik a verzión.
Hogyan megy az SSH kulcs generálása Linuxon lépésről lépésre?
Nyiss egy terminált, és futtasd az ssh-keygen parancsot a kívánt típussal. A program megkérdezi a fájl helyét és a jelszót, az alapértelmezett helyet az Enter lenyomásával fogadhatod el. A végén két fájlt kapsz: a privát és a .pub végű nyilvános kulcsot.
ssh-keygen -t ed25519 -C "laptop-otthon"
A -C kapcsoló megjegyzést fűz a kulcshoz, például a gép nevét. A -f kapcsolóval saját fájlnevet adhatsz meg. Alapból a kulcs a ~/.ssh/id_ed25519 és a ~/.ssh/id_ed25519.pub fájlba kerül.
Futtatás közben a program két dolgot kérdez. Először azt, hová mentse a kulcsot, ott az Enter az alapértelmezett helyet fogadja el. Másodszor a jelszót kéri kétszer, amelyet a gépeléskor nem látsz. Ha a megadott helyen már van kulcs, a program rákérdez, hogy felülírja-e, ezért ilyenkor válaszolj óvatosan.
Ellenőrizd, hogy létrejöttek-e a fájlok:
ls ~/.ssh
A .pub végű fájl a nyilvános kulcs, ezt másolhatod a szerverre. A kiterjesztés nélküli id_ed25519 a privát kulcs, azt soha ne add ki a kezedből. A nyilvános kulcsot a cat ~/.ssh/id_ed25519.pub paranccsal nézheted meg.
Hogyan másold a nyilvános kulcsot a szerverre?
Az ssh-copy-id parancs bejelentkezik a szerverre, és a nyilvános kulcsodat hozzáfűzi a távoli felhasználó ~/.ssh/authorized_keys fájljához. Ehhez egyszer még a jelszavadra van szükség, mert a szerver ekkor még nem ismeri a kulcsodat. Ezután a kulcs önmagában elég, ha a szerver engedélyezi a kulcsos belépést.
ssh-copy-id felhasznalo@szerver.pelda.hu
A felhasználónév és a cím helyére a saját adataidat írd. Több kulcs esetén az -i kapcsolóval megadhatod, melyiket másolja. Alapból az ssh-agentben lévő kulcsokat használja, annak híján a legfrissebb ~/.ssh/id*.pub fájlt.
Ha az ssh-copy-id nem érhető el, kézzel is másolhatsz. Az Ubuntu dokumentációja szerint a nyilvános kulcs tartalmát a szerveren a ~/.ssh/authorized_keys fájl végére kell fűzni. Ehhez jelenítsd meg a nyilvános kulcsot, majd illeszd be egy új sorba a szerver fájljába. Egy kulcs egy sor, ezért ne törd meg a sort, és ne módosíts rajta semmit.
Próbáld ki a belépést:
ssh felhasznalo@szerver.pelda.hu
Ha a belépés jelszókérés nélkül sikerül, az SSH kulcs generálása Linuxon és a másolás is sikerült. Ha a rendszer jelszót kér, az lehet a kulcsod jelszava. Ha a belépés mégsem működik, az ssh -v kapcsolóval részletes kimenetet kapsz.
Hogyan védd az SSH kulcsot jelszóval?
A kulcs generálásakor megadhatsz egy jelszót (passphrase) a privát kulcs védelmére. A kézikönyv szerint a jelszó üres is lehet, de elveszett jelszót nem lehet visszaállítani. Ezért olyan jelszót válassz, amelyet nem felejtesz el. Jelszókezelőben is tárolhatod, a Nélkülözhetetlen Linux programok cikk szerint.
A jelszót később is megváltoztathatod a -p kapcsolóval:
ssh-keygen -p -f ~/.ssh/id_ed25519
A parancs új kulcs létrehozása nélkül módosítja a megadott privát kulcs jelszavát. Előbb a régi, majd az új jelszót kéri. Jelszó nélküli kulcsot csak szigorúan védett környezetben használj. Ha az SSH kulcs generálása Linuxon jelszó nélkül történt, ezzel utólag pótolhatod.
Melyek a leggyakoribb hibák a kulcsos belépésnél?
A leggyakoribb hibák egyszerűek, és a legtöbbjüket néhány perc alatt, külön segítség nélkül is kijavíthatod. Általában a rossz felhasználónév, a rossz kulcs vagy a hiányzó másolás áll a háttérben. Az alábbi lista a tipikus eseteket és az első teendőt mutatja, hogy gyorsan továbbléphess.
- Jelszót kér a kulcs helyett. Ellenőrizd, hogy a nyilvános kulcs a megfelelő felhasználó
authorized_keysfájljában van. - Rossz kulcsot használ az ssh. Add meg az
ssh -ikapcsolóval a kívánt privát kulcsot. - Elfelejtett jelszó a kulcshoz. A jelszó nem állítható vissza, ezért új kulcspárt kell generálnod.
- Véletlenül felülírt kulcs. A generáláskor mindig olvasd el a felülírásra vonatkozó kérdést.
Hiba esetén az ssh -v kapcsoló részletes kimenete mutatja, melyik kulcsot próbálta az ssh. Ez általában gyorsan megmutatja a probléma okát. Küldj ki a hibaüzenetből csak annyit, amennyi nem tartalmaz titkos adatot.
Mit tegyél a kulcsos belépés után a szerver védelméért?
A kulcsos belépés csak az első lépés. A szerver védelméhez további beállítások kellenek: a jelszavas belépés szigorítása, a támadási kísérletek korlátozása és rendszeres ellenőrzések. Mielőtt bármit átállítasz, egy második terminálban teszteld, hogy a kulcsos belépés tényleg működik, és hogy a kapcsolat megmarad.
- Az SSH szerver biztonságának erősítése cikk az sshd beállításait mutatja.
- A Fail2ban beállítása korlátozza a támadási kísérleteket.
- A Iptables: a Linux tűzfalrendszer áttekintése a teljes képet adja.
- A Rootkit-ellenőrzés Linuxon a rendszer ellenőrzésében segít.
Gyakori hiba a jelszavas belépés kikapcsolása a kulcsos belépés tesztelése előtt. Ilyenkor kizárhatod magadat a szerverről. Hagyj nyitva egy már bejelentkezett munkamenetet, amíg a változtatást ki nem próbáltad. Így hiba esetén is vissza tudod állítani a beállítást.
Gyakori kérdések az SSH kulcsról
Hogyan tudom ellenőrizni, hogy van-e már SSH kulcsom?
Listázd a ~/.ssh mappa tartalmát az ls paranccsal. Ha id_ed25519 vagy id_rsa nevű fájlt látsz, már van kulcsod. Új kulcs generálásakor a program rákérdez, ha felülírna egy meglévőt.
Mi a különbség a privát és a nyilvános SSH kulcs között?
A nyilvános kulcsot a szerverre másolod, másokkal is megoszthatod. A privát kulcs a gépeden marad, és soha nem szabad megosztanod. Ha a privát kulcs illetéktelen kézbe kerül, bárki beléphet a nevedben.
Kell-e jelszó (passphrase) az SSH kulcshoz?
A kézikönyv szerint a jelszó üres is lehet. Jelszó nélkül viszont bárki használhatja a kulcsot, aki megszerzi a fájlt. A jelszóval védett kulcs biztonságosabb, de elveszett jelszót nem lehet visszaállítani.
Melyiket válaszd: ed25519 vagy RSA?
Új kulcshoz az Ubuntu dokumentációja az ed25519 típust ajánlja, mert rövidebb a kulcs és kisebb a számítási igény. Az RSA-t régebbi rendszerek miatt használhatod, 4096 bites mérettel. Ha nincs ilyen kényszer, maradj az ed25519-nél.
Hogyan használhatok több SSH kulcsot?
Minden kulcshoz adj külön fájlnevet az -f kapcsolóval. Bejelentkezéskor az ssh -i kapcsolójával jelölheted ki, melyik kulcsot használja. Az ssh-copy-id parancsnál az -i kapcsolóval adod meg a másolandó kulcsot.
Mit tegyek, ha elvesztettem a privát kulcsot?
Generálj új kulcspárt, és másold a nyilvános kulcsot a szerverre. A régi nyilvános kulcsot töröld a szerver authorized_keys fájljából. Ha már nem tudsz belépni, más hozzáférési módra lesz szükséged.
Mit jelent a -C kapcsoló az ssh-keygen parancsban?
A -C kapcsoló megjegyzést fűz a kulcshoz. A megjegyzés általában a felhasználót vagy a gépet azonosítja. A kulcs működését nem befolyásolja.
Szerző: a Linuxinfok szerkesztősége. Utolsó frissítés: 2026-11-03. A parancsok a hivatalos dokumentáció alapján készültek, futtatás előtt ellenőrizd az aktuális oldalt.
Források és referenciák
- Ubuntu Server dokumentáció: OpenSSH server
- ssh-keygen kézikönyvoldal (mankier.com)
- Ubuntu kézikönyvoldal: ssh-copy-id
- Kép forrás: Pexels.com