SSH (Secure Shell)

botond küldte be 2018. 06. 12., k – 11:07 időpontban

Az SSH (Secure Shell) egy kriptográfiai hálózati protokoll, amely biztonságos szolgáltatásokat nyújt a nem biztonságos hálózatokon keresztül. Legismertebb alkalmazási területe a biztonságos bejelentkezés távoli számítógépekbe. A protokoll nyilvános kulcsú hitelesítés segítségével hozza létre és tartja fenn a biztonságos csatornát, amin keresztül parancsok adhatók ki a távoli számítógépen, fájlok másolhatók a két gép között az SFTP (Secure FTP) és SCP (Secure Copy) protokollok segítségével, vagy akár X11-es kapcsolatok is továbbíthatók a tunneling funkció segítségével. Így tehát az SSH tekinthető egyfajta biztonsági szabványnak, amin keresztül több másik protokoll is titkosítottan kommunikálhat. Az SSH kiszolgálók alapértelmezetten a 22-es TCP portot figyelik.

Az SSH elsődleges célja a korábbi Telnet és a nem biztonságos távoli shell protokollok leváltása volt, mint például a rlogin, rsh, rexec, amik nem nyújtottak biztonságot a csatorna lehallgatások ellen, mivel egyszerű szövegként továbbították még a jelszavakat is a felek között. A protokoll első változatát (mai néven: SSH-1) Tatu Ylönen, a Helsinki Műszaki Egyetem egyik kutatója tervezte meg 1995-ben. A freeware-ként útjára indított megvalósítás – hatékonyságának köszönhetően – igen népszerűvé vált, 1995 év végére már több tízezren használták.

Alapjába véve ez a titkosítási protokoll távoli számítógépekbe történő bejelentkezésre és távoli parancsok futtatására lett létrehozva, ezen felül bármilyen hálózati szolgáltatás titkosítható az SSH segítségével, ezért felhasználási területe igen széleskörű. A protokoll specifikáció két fő verziót különböztet meg: SSH-1 és SSH-2.

Az SSH nyilvános kulcsú titkosítással hitelesíti a távoli számítógépet, és szükség esetén hitelesíti a felhasználót. A rendszer többféleképpen is használható: Az egyik módja, hogy automatikusan generált nyilvános és magán kulcspárokat használ a hálózati kapcsolat titkosításához, majd a bejelentkezéshez jelszó hitelesítést használ. A másik mód pedig, hogy manuálisan létrehozott nyilvános-magán kulcspárt használ a hitelesítés végrehajtásához, amely lehetővé teszi a felhasználók vagy programok számára hogy jelszó megadása nélkül léphessenek be. Ennél a módszernél bárki létrehozhat kulcspárokat, és a nyilvános kulcsot olyan számítógépen kell elhelyezni, ahol lehetővé kell tenni, hogy a feltöltött nyilvános kulcs párjának (magán kulcs) birtokosa beléphessen a számítógépbe.

A hitelesítés a magán kulcson alapul, de a magánkulcs sosem kerül át a hálózaton. Az SSH csak azt ellenőrzi, hogy ugyanaz a személy, aki a nyilvános kulcsot kínálja, szintén rendelkezik a megfelelő magánkulccsal.

 

Elterjedtebb SSH kliensek Windows-ra