8.2 SSH és SFTP kapcsolódás másik számítógéphez

A modern számítástechnika és az otthoni hálózatok egyik legnagyobb előnye, hogy az eszközeink képesek kommunikálni egymással. Felhasználóként gyakran szembesülünk azzal a helyzettel, hogy a lakás egy másik pontján lévő számítógépet (például egy médiaszervert, egy hálózati adattárolót [NAS], egy mini PC-t, vagy akár a nappaliban lévő gamer konfigurációt) szeretnénk elérni, konfigurálni vagy fájlokat másolni rá.

A hagyományos, grafikus módszerek (mint a VNC, a TeamViewer vagy az AnyDesk) nehézkesek, sávszélesség-igényesek, és megkövetelik, hogy a távoli gépen is fusson egy komplett grafikus asztali környezet. Linux alatt azonban létezik egy sokkal elegánsabb, iparági szabványnak számító, villámgyors és ultra-biztonságos megoldás: az SSH és az SFTP.

Ebben az alfejezetben megtanuljuk, hogyan veheted át a teljes irányítást egy másik linuxos gép felett a helyi hálózaton keresztül, tisztán a terminált használva, és hogyan mozgathatsz fájlokat a gépek között maximális sebességgel.


8.2.1 Mi az az SSH és hogyan működik?

An SSH a Secure Shell (biztonságos rendszerhéj) rövidítése. Ez egy olyan hálózati protokoll, amely lehetővé teszi, hogy egy kliens számítógépről (ami előtt éppen ülsz) egy titkosított csatornán keresztül bejelentkezz egy távoli szerverre vagy számítógépre, és ott parancsokat hajts végre pontosan úgy, mintha fizikai valójában a gép előtt ülnél és a billentyűzetét gépelnéd.

Az SSH működése a kliens-szerver architektúrán alapul:

  • SSH szerver: Az a távoli gép, amelyikre csatlakozni szeretnél. Ez a háttérben folyamatosan fut, és figyel egy adott hálózati kapun (alapértelmezés szerint a 22-es porton), várva a bejövő kapcsolatokat.
  • SSH kliens: Az a számítógép, amelyikről a kapcsolatot kezdeményezed (például a saját laptopod vagy PC-d terminálja).

A legfontosabb szó az SSH-ban a Secure (biztonságos). Minden adatcsere – beleértve a felhasználónevedet, a jelszavadat és a kiadott parancsokat is – erős aszimetrikus titkosítással áramlik át a hálózaton. Ez azt jelenti, hogy még ha valaki a helyi hálózaton (például egy nyilvános wifin) le is hallgatná a router adatforgalmát, akkor is csak értelmezhetetlen zajt látna, a jelszavadat és az adataidat soha nem tudná megszerezni.


8.2.2 A távoli gép (szerver) előkészítése

Mielőtt a saját gépedről rácsatlakoznál a hálózatban lévő másik számítógépre, meg kell bizonyosodnod arról, hogy a céleszköz készen áll a fogadásodra. Alapértelmezés szerint sok asztali Linux disztribúció biztonsági okokból zárva tartja az SSH kapuit.

Az OpenSSH szerver telepítése és aktiválása

A célszámítógépen (amire csatlakozni fogsz) telepíteni kell az OpenSSH szervercsomagot, és el kell indítani a rendszerszolgáltatást.

  • Fedora / Nobara / Bazzite rendszereken: Az OpenSSH kliens és szerver általában a rendszer része, de a szolgáltatást el kell indítani:

sudo systemctl enable --now sshd

(A --now kapcsoló gondoskodik arról, hogy a szolgáltatás azonnal elinduljon, az enable pedig arról, hogy a gép következő újraindításakor is automatikusan betöltődjön.)

  • Debian / Ubuntu / Linux Mint rendszereken:
sudo apt update
sudo apt install openssh-server
sudo systemctl enable --now ssh

A távoli gép IP-címének kiderítése

Ahhoz, hogy tudjuk, hova kell küldeni a kapcsolatot, ismernünk kell a távoli gép egyedi hálózati azonosítóját, azaz az IP-címét. Menj oda a távoli géphez, nyiss egy terminált, és futtasd az alábbi parancsot:

ip a

A kimenetben keresd meg az aktív hálózati kártyádat (ethernet kábel esetén gyakran enp... vagy eth..., Wi-Fi esetén wlo... vagy wlan... néven fut), és azon belül az inet szót követő számsort. Ez helyi hálózatokon leggyakrabban így néz ki: 192.168.1.X vagy 10.0.0.X.

Példa: Tegyük fel, hogy a távoli gépünk IP-címe: 192.168.1.50, a felhasználóneve pedig ezen a gépen: kjanos.


8.2.3 Kapcsolódás SSH-n keresztül

Most, hogy a távoli gép felkészült, ülj le a saját elsődleges számítógéped elé, nyiss egy Konsole ablakot, és kezdeményezzük a kapcsolatot. Az SSH parancs felépítése rendkívül egyszerű:

ssh felhasználónév@IP-cím

A mi példánk alapján a parancs így fog kinézni:

ssh kjanos@192.168.1.50

Az első kapcsolódás: A „fingerprint” figyelmeztetés

Amikor életedben először csatlakozol egy adott IP-címre, az SSH kliens megállít, és egy ehhez hasonló, ijesztőnek tűnő szöveget ír ki:

The authenticity of host '192.168.1.50 (192.168.1.50)' can't be established.
ED25519 key fingerprint is SHA256:vX2m...
Are you sure you want to continue connecting (yes/no/[fingerprint])? █

Ez nem hiba! Ez egy kulcsfontosságú biztonsági védelmi vonal. A kliens program jelzi, hogy még sosem látta ezt a gépet, és megmutatja a távoli gép egyedi digitális ujjlenyomatát (fingerprint). Ezzel védekezik a rendszer az úgynevezett Man-in-the-Middle (közbeékelődéses) támadások ellen.

Mivel tudjuk, hogy a saját helyi hálózatunkon lévő saját gépünkről van szó, gépeld be teljes egészében, hogy yes, majd nyomj Entert. A rendszered elmenti ezt az ujjlenyomatot a ~/.ssh/known_hosts fájlba, és legközelebb már nem fog kérdezni semmit.

A bejelentkezés

A yes után a terminál bekéri a távoli gépen lévő felhasználó (kjanos) jelszavát:

kjanos@192.168.1.50's password: █

Gépeld be a jelszót (figyelem: a karakterek és a csillagok most is láthatatlanok maradnak a képernyőn!), majd nyomj Entert.

Sikeres azonosítás után a terminálod promptja megváltozik! Mostantól nem a saját géped nevét látod, hanem a távoli gépét:

[kjanos@tavoli-szerver ~]$ █

Gratulálok: bent vagy! Bármilyen parancsot gépelsz be ide (legyen az egy ls, egy mkdir, egy htop vagy egy rendszerfrissítés), az nem a te előtted lévő gépen fog lefutni, hanem a hálózaton lévő távoli gépen. Az ő processzorát terheli, az ő merevlemezére ír.

Kilépés a távoli munkamenetből

Ha végeztél a távoli munkával, és szeretnél visszatérni a saját helyi terminálodhoz, egyszerűen gépeld be:

exit

A hálózati kapcsolat elegánsan lezárul, és visszakapod a saját lokális parancssorodat.


8.2.4 Kulcsalapú azonosítás (A jelszómentes, biztonságos jövő)

Bár a jelszóval történő bejelentkezés kényelmes, hosszú távon fárasztó minden egyes csatlakozáskor újra és újra begépelni azt. Ráadásul a jelszavak sebezhetőek a brute-force támadásokkal szemben. A Linux közösség ezért a ssh-kulcsok (SSH Keys) használatát javasolja.

A kulcsalapú azonosítás lényege, hogy generálunk egy egymáshoz matematikailag elválaszthatatlanul kapcsolódó kulcspárt:

  1. Privát kulcs (Private Key): Ez a te saját gépeden marad, titokban, mint egy mesterkulcs. Senkinek nem adhatod oda.
  2. Publikus kulcs (Public Key): Ez a „lakat”. Ezt felmásoljuk a távoli gépre.

Amikor csatlakozol, a két kulcs felismeri egymást, és a rendszer jelszó kérése nélkül, a másodperc törtrésze alatt beenged.

1. Kulcspár generálása a saját gépeden

Nyiss egy tiszta helyi terminált, és futtasd az alábbi parancsot a legmodernebb, legbiztonságosabb Ed25519 algoritmust használva:

ssh-keygen -t ed25519

A program megkérdezi, hova mentse (nyomj Entert az alapértelmezett /home/user/.ssh/id_ed25519 elfogadásához). Ezután kérhet egy passphrase-t (jelmondatot). Ez egy extra jelszó, ami magát a kulcsfájlt védi a lemezeden. Otthoni, biztonságos környezetben ezt üresen is hagyhatod (nyomj két Entert), így teljesen automatikus lesz a belépés.

2. A publikus kulcs átmásolása a távoli gépre

Nem kell manuálisan másolgatnod a fájlokat, a Linux erre is tartalmaz egy célszerszámot:

ssh-copy-id kjanos@192.168.1.50

A parancs bekéri a távoli gép jelszavát utoljára, majd automatikusan megkeresi a publikus kulcsodat, és beilleszti azt a távoli gép ~/.ssh/authorized_keys nevű gyűjteményébe.

A próba

Próbálj meg újra kapcsolódni:

ssh kjanos@192.168.1.50

A rendszer azonnal, jelszó kérése nélkül beléptet. Ez a lépés elengedhetetlen ahhoz, hogy a későbbi fejezetekben automatikus mentési szkripteket tudjunk írni, amelyek emberi beavatkozás nélkül futnak le a háttérben.

3. Meglévő SSH kulcs használata

Ha a szerveren generált párosból a privát kulcsot (id_rsa - kiterjesztés nélkül) töltötted le a saját gépedre, akkor a következő parancssori lépések kellenek a kapcsolódáshoz (feltéve, hogy a szerveren a .pub tartalmát már bemásoltad a ~/.ssh/authorized_keys fájlba):

Jogosultságok beállítása (Kötelező!): A Linux biztonsági okokból le fog tiltani, ha a privát kulcsodhoz bárki más hozzáférhet a gépeden. Adj neki szigorú jogot:

chmod 600 /eleresi/ut/id_rsa

Kapcsolódás a letöltött kulccsal: A -i kapcsolóval meg kell mutatnod az SSH-nak, hogy ezt a konkrét kulcsot használja:

ssh -i /eleresi/ut/id_rsa felhasznalonev@szerver_ip_cime

Így például be tudsz lépni egy Cpanel webtárhely termináljába, ha előtte generáltál a szerveren kulcspárokat.


8.2.5 Fájlkezelés SFTP-vel

Az SSH nemcsak parancsok futtatására jó, hanem egy komplett fájlátviteli protokollt is magával hordoz. Ez az SFTP (Secure File Transfer Protocol). Fontos, hogy ne keverd össze a régi, elavult FTP-vel vagy az FTPS-sel: az SFTP teljes egészében az SSH biztonságos csatornáját használja, így semmilyen extra beállítást vagy újabb nyitott portot nem igényel.

Ha terminálból szeretnél fájlokat fel- és letölteni egy távoli gépről, indítsd el az sftp programot:

sftp kjanos@192.168.1.50

Sikeres belépés után egy speciális SFTP prompt fogad: sftp>. Itt a parancsok egy kicsit másképp működnek, mert egyszerre kell vezérelned a saját (helyi) és a távoli géped fájlrendszerét.

A kettős parancsok logikája

Az SFTP-ben a normál parancsok a távoli gépre vonatkoznak, míg az l betűvel (local) kezdődő parancsok a saját (helyi) gépedre:

Távoli gép parancsa Funkció Helyi gép parancsa Funkció
pwd Távoli aktuális mappa kiírása lpwd Helyi aktuális mappa kiírása
ls Távoli mappa listázása lls Helyi mappa listázása
cd Távoli mappaváltás lcd Helyi mappaváltás

Fájlok letöltése és feltöltése: get és put

Az SFTP lényege két parancsban foglalható össze:

  1. get (Letöltés): Áthúz egy fájlt a távoli gépről a helyi gépedre.

sftp> get tavoli_adat.txt

(A távoli gép aktuális mappájában lévő tavoli_adat.txt letöltődik a helyi géped azon mappájába, ahonnan az sftp parancsot elindítottad). 2. put (Feltöltés): Feltölt egy fájlt a te gépedről a távoli gépre.

sftp> put helyi_kep.png

Ha teljes mappastruktúrákat szeretnél le- vagy feltölteni rekurzívan, használd a -r kapcsolót: get -r tavoli_mappa. Ha végeztél, az exit vagy bye paranccsal léphetsz ki az SFTP felületről.


8.2.6 Grafikus fájlkezelők felvértezése SSH-val

Bár ez a fejezet a terminálról szól, fontos megemlíteni, hogy a háttérben felépített SSH/SFTP tudásodat a grafikus felületen is kamatoztathatod. A KDE Plasma alapértelmezett fájlkezelője, a Dolphin natívan képes kezelni az SFTP protokollokat.

  1. Nyisd meg a Dolphint.
  2. Kattints a felső címsorra (vagy nyomj Ctrl + L-t, hogy szerkeszthető legyen).
  3. Töröld ki a tartalmat, és írd be az alábbi hálózati útvonalat a korábbi mintánk alapján:

sftp://kjanos@192.168.1.50/

  1. Nyomj Entert. Ha beállítottad a kulcsalapú azonosítást, a Dolphin ablakában azonnal megjelennek a távoli gép fájljai grafikus ikonokként.

Mostantól a megszokott egérrel való fogd és vidd (drag-and-drop) módszerrel húzhatsz át filmeket, képeket vagy dokumentumokat a két gép között, miközben a háttérben a hálózati forgalmat a parancssorból megismert, sziklaszilárd OpenSSH motor hajtja és titkosítja.

SFTP Ezen a képen egy Kobo Aura One ebook-olvasó könyvtárszerkezete látható. Az olvasóra előtte a gyári szoftver mellé fel kellett tenni a Koreader olvasóprogramot, abban beállítani a wifit, és bekapcsolni az SSH szervert. Miután a fent említett módszerrel a linuxos PC-n Dolphinban kapcsolódtam az olvasóhoz, a könyvtárat egérrel átvonszoltam a bal oldali gyors hivatkozásokhoz, átneveztem, így a későbbiekben bármikor egy kattintással elérem.

Utolsó frissítés: 2026. július 13. 08:50