Skip to content

SSH kulcs generálás

SSH kulcspár létrehozása (ed25519) macOS, Linux és Windows alatt. Publikus kulcs feltöltése a HelloHost felületre.

This content is not available in your language yet.

A HelloHost szerverekhez jelszó nélküli, kulcs-alapú SSH hitelesítést használunk. Ehhez szükséged van egy SSH kulcspárra: egy privát kulcsra (soha nem hagyja el a gépedet) és egy publikus kulcsra (ezt töltöd fel a HelloHost felületre).

Ez a dokumentum végigvezet a kulcs létrehozásán macOS, Linux és Windows rendszeren, és megmutatja hogyan add hozzá a HelloHost-hoz.

Három algoritmust támogat az OpenSSH: RSA, ECDSA és ed25519. A HelloHost ed25519-et használ és ezt ajánljuk:

  • Kisebb kulcsméret (68 karakter a publikus), ugyanakkor erősebb mint egy 3072-bites RSA
  • Gyorsabb a kulcs kiállítás és a hitelesítés
  • Modern, biztonságos szabvány – a GitHub és a GitLab is alapértelmezetten ezt javasolja
  • OpenSSH 6.5 óta (2014) támogatott – minden modern rendszer tudja

Nyiss egy terminált és futtasd:

Terminál
ssh-keygen -t ed25519 -C "nev@hellohost"

A -C opció a kulcshoz tartozó kommentár – az email címed vagy egy azonosító, ami megjelenik az authorized_keys fájlban, hogy később felismerd.

A parancs 3 kérdést tesz fel:

  1. Fájl útvonala – [Enter] megnyomásával fogadd el az alapértelmezett ~/.ssh/id_ed25519-et. Ha több kulcsod is lesz, adj különálló nevet (pl. ~/.ssh/hellohost_ed25519).
  2. Passphrase (jelmondat) – erősen ajánlott megadni. Ha a privát kulcsodhoz valaki hozzáfér, a passphrase egy extra védelmi réteg. Ne spórolj vele.
  3. Passphrase megerősítése – írd be újra.

A parancs végén ezt látod:

Your identification has been saved in /Users/te/.ssh/id_ed25519
Your public key has been saved in /Users/te/.ssh/id_ed25519.pub

Windows 10/11-en már beépített OpenSSH kliens van, így nincs szükség külső eszközre.

Nyiss egy PowerShell ablakot és futtasd:

Terminál
ssh-keygen -t ed25519 -C "nev@hellohost"

A folyamat ugyanaz, mint macOS / Linux alatt. A kulcsok a C:\Users\<felhasznalonev>\.ssh\ mappába kerülnek.

Ha valamiért PuTTY-t használsz (pl. régebbi Windows), a PuTTYgen alkalmazással készítheted el a kulcsot:

  1. Indítsd el a PuTTYgen-t
  2. Válaszd az EdDSA típust, az Ed25519 (255 bits) görbével
  3. Kattints a Generate gombra, mozgasd az egeret a terület felett entrópiához
  4. Add meg a passphrase-t
  5. Save private key – mentse .ppk formátumban (PuTTY saját formátuma)
  6. A felső szövegdobozban megjelenik a publikus kulcs OpenSSH formátumban – ezt másold ki

Bővebben a PuTTY használatáról: SSH használat Windows-on.

Az ssh-agent a memóriában tartja a privát kulcsod passphrase-ét, így a session során nem kell újra és újra beírnod.

macOS Keychain-be mentve a passphrase perzisztens marad (reboot után is):

Terminál
ssh-add --apple-use-keychain ~/.ssh/id_ed25519
Terminál
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

Ha a session lejár, újra be kell írnod. Perzisztens megoldáshoz állítsd be a ~/.ssh/config-ban (lásd alább).

Windows-on először engedélyezni kell az OpenSSH Authentication Service-t:

Terminál
# Rendszergazda PowerShell
Set-Service ssh-agent -StartupType Automatic
Start-Service ssh-agent

Ezután a szokásos parancs:

Terminál
ssh-add $env:USERPROFILE\.ssh\id_ed25519

Publikus kulcs feltöltése a HelloHost-ra

Szekció neve “Publikus kulcs feltöltése a HelloHost-ra”
  1. Jelentkezz be a cloud.hellohost.io felületre
  2. Menj egy szerver oldalára → SSH Keys tab
  3. Kattints az Add SSH Key gombra
  4. Name: egy felismerhető név (pl. macbook-pro, home-desktop)
  5. Public Key: illeszd be a publikus kulcs tartalmát

A publikus kulcs tartalmát így másold ki:

macOS:

Terminál
pbcopy < ~/.ssh/id_ed25519.pub

Linux (Wayland/X11):

Terminál
xclip -selection clipboard < ~/.ssh/id_ed25519.pub
# vagy
wl-copy < ~/.ssh/id_ed25519.pub

Windows PowerShell:

Terminál
Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub | Set-Clipboard

Majd Ctrl+V / Cmd+V a HelloHost űrlapba.

Mentés után néhány másodpercen belül megjelenik a szerveren, és próbálkozhatsz az SSH bejelentkezéssel:

Terminál
ssh -p <port> <user>@<szerver-ssh-host>

A portot és a hostnevet a szerver oldalán a Configuration szekcióban találod.

Ha több szerverhez is csatlakozol, vagy nem default porton mennek, érdemes a ~/.ssh/config-ot használni. Windows alatt a C:\Users\<user>\.ssh\config helyen.

Példa:

Host wphu
HostName 2a01-4f9-5a-4651--108.ssh.hellohost.io
Port 10009
User root
IdentityFile ~/.ssh/id_ed25519
AddKeysToAgent yes
UseKeychain yes

Ezután elég:

Terminál
ssh wphu

Az AddKeysToAgent yes + UseKeychain yes beállítás miatt az első bejelentkezésnél a passphrase-t beírod, utána a keychain megjegyzi.

  • Passphrase használata – ne legyen jelszó nélküli kulcsod (legalább 12 karakter)
  • ed25519 algoritmus – ne RSA-1024, ne DSA
  • Privát kulcs jogosultság – ~/.ssh/id_ed25519 legyen 600 (csak te olvashatod, senki más)
  • Authorized_keys ellenőrzése – a szerveren néha nézd át, hogy csak a várt kulcsok vannak-e
  • Forgó kulcsok – évente új kulcsot, régiek törlése a HelloHost SSH Keys listából
  • Privát kulcs NE legyen git-ben, felhő szinkronban, üzenetben, pendrive-on
  • A publikus kulcs nincs (még) hozzáadva a szerverhez → ellenőrizd a HelloHost SSH Keys tabot
  • A kliens nem a megfelelő privát kulcsot küldi → ssh -v ... indítással láthatod, melyik kulcsokat próbálja; megoldás: ~/.ssh/config-ban IdentityFile explicit megadása
  • A privát kulcs jogosultsága túl nyitott → chmod 600 ~/.ssh/id_ed25519

“Bad owner or permissions on /home/…/.ssh/authorized_keys”

Szekció neve ““Bad owner or permissions on /home/…/.ssh/authorized_keys””

Az SSH szigorú a jogosultságokkal a szerveren:

Terminál
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

“Could not open a connection to your authentication agent”

Szekció neve ““Could not open a connection to your authentication agent””

Az ssh-agent nem fut. Lásd a fenti ssh-agent szekciót.

Kulcs típus hiba (“no matching host key type found”)

Szekció neve “Kulcs típus hiba (“no matching host key type found”)”

Régi SSH kliens nem ismer ed25519-et. Frissítsd a kliensoldali OpenSSH-t, vagy ideiglenes megoldásként a ~/.ssh/config-ba:

Host <név>
HostKeyAlgorithms +ssh-rsa,ssh-ed25519

Windows alatt egy teljes gyakorlati útmutató az SSH használathoz: SSH használat Windows-on.

We respect your privacy

We use cookies to improve your browsing experience and to analyse traffic. Analytics only starts if you allow it. Privacy policy, Cookie policy.

Cookie settings