SSH használata: a teljes útmutató a biztonságos távoli szerverkezeléshez

9 perc olvasás

Az SSH (Secure Shell) a Linux szerverek kezelésének alapeszköze: egy titkosított kapcsolat, amelyen keresztül parancsokat futtathatsz egy távoli gépen, fájlokat másolhatsz, és biztonságos alagutat nyithatsz más szolgáltatásokhoz. Ha VPS-t bérelsz, ezen keresztül fogod telepíteni, frissíteni és beállítani; ha cPanel tárhelyed van, ezzel futtathatsz WP-CLI vagy Composer parancsokat, és ezzel kezelheted a Git tárolóidat.

Ebben az útmutatóban elmagyarázzuk, hogyan működik az SSH, hogyan csatlakozhatsz Windowsról, macOS-ről és Linuxról, hogyan állíts be jelszó helyett kulcsos belépést, hogyan másolj fájlokat, hogyan tedd biztonságossá egy szerver SSH-elérését, és mit jelentenek a leggyakoribb hibaüzenetek.

Hogyan működik az SSH?

Az SSH kliens–szerver alapon működik: a szerveren az SSH-szolgáltatás (Linuxon általában az OpenSSH sshd folyamata) fut, és alapértelmezésben a 22-es TCP porton fogadja a kapcsolatokat, a saját gépeden pedig egy SSH kliens kapcsolódik hozzá.

A kapcsolat felépülésekor a két fél titkosítási kulcsokat egyeztet, így minden, ami utána a hálózaton megy (a jelszó, a parancsok és az eredményük, a fájlok), titkosítva utazik. Ezért váltotta fel az SSH a régi, titkosítatlan Telnetet, és ezért jobb az SSH-ra épülő SFTP a sima FTP-nél, amely a jelszót is olvasható formában küldi.

Az első csatlakozáskor a kliens megmutatja a szerver ujjlenyomatát (fingerprint), és megkérdezi, megbízol-e benne. Elfogadás után megjegyzi (a ~/.ssh/known_hosts fájlban), és ha legközelebb más ujjlenyomatot lát ugyanazon a címen, figyelmeztet. Ez véd az ellen, hogy valaki a szerver nevében kapja el a kapcsolatot; ha a figyelmeztetés váratlanul jelenik meg (nem telepítetted újra a szervert), ne lépj tovább.

Videó: How Secure Shell Works (SSH) - Computerphile (Computerphile, angol nyelvű)

Mire használható?

  • Szerverkezelés: csomagok telepítése és frissítése, konfigurációs fájlok szerkesztése, szolgáltatások újraindítása, naplók olvasása.
  • Fájlátvitel: SFTP, SCP és rsync, titkosítva.
  • Fejlesztői munka: Git műveletek, WP-CLI, Composer, npm, adatbázis-mentés és -visszatöltés parancssorból.
  • Alagút (tunnel): egy szerveren futó, kívülről nem elérhető szolgáltatás (például adatbázis vagy távoli asztal) biztonságos elérése a saját gépedről.

Hol érhető el SSH az aWh-nál?

  • KVM VPS: teljes, root jogú SSH hozzáférés.
  • cPanel tárhely: a cP Premium csomagtól felfelé, a saját tárhelyfiókodon belül (a CloudLinux CageFS miatt csak a saját fájljaidat látod).
  • Statikus tárhely: SFTP fájlátvitel, parancssori hozzáférés nélkül.
  • Webtárhely (KeyHelp): SSH nem érhető el, a fájlokat FTP-n vagy a fájlkezelővel kezelheted.

Csatlakozás

Minden esetben a felhasználónév és a szerver címe kell, például root@203.0.113.10 vagy felhasznalo@szerver.awh.hu.

Windows

Windows 10 és 11 alatt az OpenSSH kliens be van építve. Nyisd meg a PowerShellt vagy a Terminált, és írd be:

ssh felhasznalo@203.0.113.10

Nem szabványos port esetén: ssh -p 2222 felhasznalo@203.0.113.10.

Ha grafikus programot szeretnél, a PuTTY a klasszikus választás, a MobaXterm pedig beépített SFTP böngészőt is ad; fájlátvitelhez a WinSCP és a FileZilla is SFTP-t használ.

macOS és Linux

Nyisd meg a Terminált, és ugyanazt a parancsot használd: ssh felhasznalo@203.0.113.10. Az OpenSSH kliens mindkét rendszeren alapból telepítve van.

Telefonról

Androidon a Termius vagy a JuiceSSH, iPhone-on a Termius vagy a Blink Shell alkalmazással gyors ellenőrzésekhez és egy-egy parancshoz kényelmesen használható.

A VPS-hez való első csatlakozás lépéseit a VPS SSH-csatlakozásáról szóló tudásbázis cikk is leírja.

Kulcsos belépés jelszó helyett

A jelszavas SSH-belépés a leggyakoribb támadási célpont: automatizált botok folyamatosan próbálgatják a jelszavakat. A kulcspáros hitelesítés ennél sokkal biztonságosabb: egy privát kulcs marad a saját gépeden, a hozzá tartozó nyilvános kulcs pedig a szerverre kerül. Belépéskor a szerver ellenőrzi, hogy nálad van-e a privát kulcs, anélkül hogy az a hálózaton átmenne.

1. Kulcspár létrehozása (Windows PowerShellben, macOS-en és Linuxon is így):

ssh-keygen -t ed25519 -C "laptop-2026"

Az Ed25519 a ma ajánlott kulcstípus: rövid, gyors és erős. Ha egy régi rendszer nem támogatja, használj -t rsa -b 4096 kulcsot. Adj meg jelmondatot (passphrase): ha a laptopod rossz kezekbe kerül, a kulcs e nélkül nem használható. Hogy ne kelljen minden alkalommal begépelni, az ssh-agent megjegyzi a munkamenet idejére.

2. A nyilvános kulcs feltöltése a szerverre:

ssh-copy-id felhasznalo@203.0.113.10

Windowson, ahol nincs ssh-copy-id, másold a C:\Users\<név>\.ssh\id_ed25519.pub fájl tartalmát a szerveren a ~/.ssh/authorized_keys fájl végére. cPanel tárhelyen a kulcsot a felületen is feltöltheted vagy létrehozhatod; ennek lépéseit az SSH-kulcs cPanelben való létrehozásáról és feltöltéséről szóló cikk írja le.

3. Próbáld ki egy új ablakban, hogy a kulccsal be tudsz-e lépni, és csak utána tiltsd le a jelszavas belépést (lásd lent). Ha előbb tiltod le, kizárhatod magad.

Több kulcs, több szerver: egy szerverre több nyilvános kulcsot is feltehetsz (soronként egyet az authorized_keys fájlban), így minden eszközödnek vagy munkatársadnak saját kulcsa lehet, amelyet külön visszavonhatsz. A saját gépeden a ~/.ssh/config fájlban szerverenként megadhatod a címet, a felhasználót, a portot és a kulcsot:

Host webszerver
    HostName 203.0.113.10
    User janos
    Port 22
    IdentityFile ~/.ssh/id_ed25519

Ezután elég ennyi: ssh webszerver.

Fájlok másolása SSH-n

  • SFTP: grafikus programmal (FileZilla, WinSCP, Cyberduck) vagy parancssorból (sftp felhasznalo@szerver). A sima FTP biztonságos alternatívája.
  • SCP: egy-egy fájl gyors másolása: scp mentes.tar.gz felhasznalo@szerver:/home/felhasznalo/.
  • rsync: mappák szinkronizálása, csak a változásokat viszi át, ezért nagy mennyiségnél és ismételt másolásnál a leggyorsabb: rsync -avz ./public_html/ felhasznalo@szerver:/var/www/oldal/.

A három eszköz részletes használatát a scp, rsync és sftp használatáról szóló cikk mutatja be.

Hasznos tudnivalók

  • Hosszan futó parancsok: ha a kapcsolat megszakad, a futó parancs is leáll. Használj tmux-ot vagy screen-t: a munkamenet a szerveren tovább fut, és később visszacsatlakozhatsz hozzá. Erről a tmux és a screen használatáról szóló cikk ír.
  • Alagút: ssh -L 3307:localhost:3306 felhasznalo@szerver után a saját gépeden a localhost:3307 címen éred el a szerver adatbázisát, anélkül hogy a 3306-os portot kinyitnád.
  • Ki lépett be? A last parancs a korábbi belépéseket, a who a jelenleg bejelentkezetteket mutatja; a részletes naplót a journalctl -u ssh (Debian, Ubuntu) vagy journalctl -u sshd (AlmaLinux, Rocky Linux) adja.
  • Nem kell állandó IP-cím az SSH-hoz, de ha van, a tűzfalon csak arról engedheted a belépést, ami nagyon hatékony védelem.

Az SSH-szerver biztonsága egy VPS-en

Egy frissen telepített VPS SSH-portját perceken belül elérik az automatikus jelszópróbálgatók. Az alábbi beállításokkal a kockázat nagy része megszűnik.

  1. Saját felhasználó sudo joggal, és a mindennapi munkához ezt használd root helyett.
  2. Kulcsos belépés, majd a jelszavas belépés letiltása. A /etc/ssh/sshd_config fájlban (vagy egy /etc/ssh/sshd_config.d/ alatti fájlban):

    PasswordAuthentication no
    PermitRootLogin prohibit-password
    

    Ha már van saját sudo felhasználód, a root belépés teljesen tiltható: PermitRootLogin no. Mentés után ellenőrizd a beállítást (sudo sshd -t), indítsd újra a szolgáltatást (sudo systemctl restart ssh vagy sshd), és egy új ablakban próbáld ki a belépést, mielőtt a régit bezárnád.

  3. Fail2ban: a sikertelen próbálkozások után automatikusan kitiltja a próbálkozó IP-címét. Telepítéséről a fail2ban beállításáról szóló cikk ír.
  4. Tűzfal: csak a szükséges portok legyenek nyitva, és ha van fix IP-címed, az SSH-t csak arról engedd.
  5. Frissítések: az OpenSSH-ban is előfordulnak sebezhetőségek (a 2024-es „regreSSHion” például jelszó nélküli távoli kódfuttatást tett lehetővé a frissítetlen szervereken), ezért kapcsold be az automatikus biztonsági frissítéseket.
  6. A port átállítása (például 22 helyett 2222) csökkenti a naplókban a zajt, de önmagában nem véd; a kulcsos belépést és a Fail2bant nem helyettesíti. Ha átállítod, a tűzfalon is nyisd meg az új portot, AlmaLinuxon és Rocky Linuxon pedig a SELinuxnak is engedélyezni kell.

A részleteket az SSH-szerver biztonsági beállításairól szóló tudásbázis cikkünk és a VPS biztonsági útmutatónk írja le.

Ha elveszíted a privát kulcsot, a szerverre csak egy másik, még érvényes kulccsal vagy jelszóval jutsz be. Ezért érdemes legalább két eszközről (vagy egy biztonságosan tárolt tartalékkulccsal) hozzáférést tartani. Ha mindent elvesztettél, egy aWh VPS-nél írj nekünk, és segítünk visszaszerezni a hozzáférést. Ha a kulcsod illetéktelen kezekbe kerülhetett, töröld a nyilvános részét minden szerver authorized_keys fájljából.

Gyakori hibaüzenetek

  • Connection timed out: a csomagok nem jutnak el a szerverig. Rossz az IP-cím vagy a port, a tűzfal (a szerveren vagy a saját hálózatodon) blokkol, vagy a szerver nem fut. Ha IP-korlátozást vagy Fail2bant használsz, előfordulhat, hogy a saját IP-címed került kitiltásra.
  • Connection refused: a szerver elérhető, de azon a porton nem fut SSH-szolgáltatás. Rossz port, vagy az sshd leállt.
  • Permission denied (publickey): a szerver nem fogadja el a kulcsot. Rossz felhasználónév, nem a megfelelő kulcsot kínálja a kliens (a -i kapcsolóval adhatod meg), vagy a szerveren rosszak a jogosultságok: a ~/.ssh mappa 700, az authorized_keys fájl 600 legyen.
  • REMOTE HOST IDENTIFICATION HAS CHANGED: a szerver ujjlenyomata megváltozott. Ha újratelepítetted a szervert, ez várható: töröld a régi bejegyzést (ssh-keygen -R 203.0.113.10). Ha nem, ne csatlakozz, amíg nem tudod, miért változott.
  • Too many authentication failures: a kliens túl sok kulcsot próbált végig. Add meg a megfelelőt a -i kapcsolóval vagy a ~/.ssh/config fájlban (IdentitiesOnly yes).

Összefoglalás

Az SSH a Linux szerverek kezelésének biztonságos alapja. Csatlakozni Windowsról, macOS-ről és Linuxról is a beépített klienssel tudsz, a jelszó helyett pedig használj jelmondattal védett Ed25519 kulcsot. Egy VPS-en első dolgod legyen a kulcsos belépés beállítása, a jelszavas és a root belépés letiltása, a Fail2ban és a tűzfal, a fájlokat pedig FTP helyett SFTP-n vagy rsync-kel mozgasd.

Az aWh KVM VPS szervereihez teljes root jogú SSH hozzáférés jár, a cPanel tárhelyeken pedig a Premium csomagtól érhető el SSH.

Gyakori kérdések

Biztonságosabb az SSH, mint az FTP?

Igen. Az FTP titkosítatlanul küldi a jelszót és a fájlokat, az SSH-ra épülő SFTP mindent titkosít. Ha a tárhelyed engedi, mindig SFTP-t használj.

Melyik SSH klienst használjam Windows 11-en?

A beépített OpenSSH klienst a PowerShellben vagy a Terminálban; ha grafikus program kell, a PuTTY-t vagy a MobaXtermet, fájlátvitelhez a WinSCP-t.

Mit tegyek, ha elfelejtettem a kulcsom jelmondatát?

A jelmondat nem állítható vissza. Hozz létre új kulcspárt, és töltsd fel az új nyilvános kulcsot a szerverre egy másik, működő hozzáféréssel; a régit töröld az authorized_keys fájlból.

Használhatok több SSH kulcsot egy gépen?

Igen. Hozz létre külön kulcsot például a munkához és a saját projektjeidhez, és a ~/.ssh/config fájlban add meg szerverenként, melyiket használja a kliens.

Hogyan futtassak parancsot úgy, hogy a kilépés után is fusson?

Indítsd tmux vagy screen munkamenetben, vagy a nohup parancs & formában. A legjobb a tmux, mert később vissza is csatlakozhatsz.

Kell fix IP-cím az SSH-hoz?

Nem, de ha van, a tűzfalon csak arról engedheted a belépést, ami nagyon hatékony védelem.

Biztonságos az SSH nyilvános Wi-Fi-n?

Igen, a kapcsolat titkosított. Figyelj viszont a szerver ujjlenyomatára: ha váratlanul megváltozik, ne csatlakozz.

Át kell állítanom a 22-es portot?

Nem kötelező. Csökkenti a naplókban látható automatikus próbálkozásokat, de a valódi védelmet a kulcsos belépés, a jelszavas belépés tiltása és a Fail2ban adja.

Vissza a blogra