Az SSH (Secure Shell) egy olyan protokoll, amely lehetővé teszi számunkra, hogy biztonságosan hozzáférjünk távoli számítógépekhez, alapvetően a Telnethez hasonlóan, de titkosítási algoritmusokat használva, amelyek segítenek biztonságban tartani a kapcsolatunkat, különösen akkor, ha olyan számítógépekhez szeretnénk hozzáférni, amelyek fontos funkciót látnak el egy szervezeten belül.
Általában a hozzáféréshez meg kell adnunk a felhasználónevünket és a számítógép címét, hogy az SSH szerver megkérdezze tőlünk a hozzáférési jelszót:
ssh usuario@equiporemoto
Attól a pillanattól kezdve, hogy az ügyfél megkezdi az első kapcsolatot a távoli számítógép és köztünk, az információk már biztonságosan utaznak, megakadályozva, hogy valaki megszerezze a hozzáférési hitelesítő adatainkat ahhoz a számítógéphez, azonban az SSH nagyon adaptálható protokoll, amely számos lehetőséget kínál számunkra.
SCP
Ezek közül az első az, hogy képes legyen fájlokat átvinni az ügyfél és a távoli számítógép között, anélkül, hogy FTP vagy NFS szervert kellene csatlakoztatni, egyszerűen az SCP (Secure CoPy) használatával, amelyet a legtöbb SSH szerver megvalósít:
scp archivo.tar.gz usuario@equiporemoto:/home/usuario
scp usuario@equiporemoto:/var/log/messages messages.txt
SSH-alagút
Ez a szolgáltatás nagyon hasznos, mivel lehetővé teszi számunkra, hogy olyan információkat küldjünk és fogadjunk, amelyek nem feltétlenül shell parancsok az ügyfél és a távoli számítógép között, például a szokásos böngészés. Ha nem sejted, hogy ennek milyen haszna lehet, gondolj a következőkre: el kell érned egy oldalt, de a helyeden van egy tűzfal, amely pontosan blokkolja ezt az oldalt, ezért alagutazhatunk egy távoli számítógéppel, amely nem még nem mondta, hogy az SSH-munkamenetünkön keresztül zárolt és böngészett az oldalon:
ssh -D 8888 usuario@equiporemoto
A csatlakozás után SSH-ügyfelünk proxy szerverként „hallgatja” a 8888-as portot, így konfigurálhatjuk böngészőnket, és az összes forgalmat az SSH-munkameneten keresztül továbbítjuk.
Egy másik példa számomra az, amikor valamilyen földrajzi korlátozás miatt nem tudunk elérni egy webszolgáltatást onnan, ahol vagyunk, az alagút készítésekor az említett webszolgáltatás a távoli kiszolgálónk IP-jét érzékeli forrásként, nem pedig az ügyfél IP-jét. Ez némileg megegyezik a VPN-ekkel (virtuális magánhálózat)
Fordított SSH
Ha valamilyen okból hozzáférnünk kell egy olyan tűzfal mögötti számítógéphez, amely nem teszi lehetővé az SSH forgalom átirányítását, akkor megtehetünk egy „fordított SSH-t”, oly módon, hogy az a számítógép csatlakozzon egy másik SSH-kiszolgálóhoz, ahol mi is csatlakozhatunk a tűzfal mögötti berendezések eléréséhez. Eszembe jut egy példa, amikor segíteni akarunk egy olyan barátunknak, akinek fogalma sincs, hogyan konfigurálhatja az átirányítást a modemjén, de távolról kell elérnünk a számítógépét:
Friend -> Modem -> SSH Server <- Rólunk
A követendő lépések viszonylag nagyon egyszerűek:
Barát
ssh -R 9999:localhost:22 usuario@servidorssh
minket
ssh usuario@servidorssh
Miután beléptünk az SSH szerverre, kapcsolatba léphetünk barátunk csapatával
ssh amigo@localhost -p 9999
Mint látható, minden varázslat az -R paraméterben rejlik, amely azt közli a köztes szerverrel, hogy a 9999-es porton barátunk számítógépe most szerverként hallgat.
Ez csak néhány lehetőség, amelyet az SSH kínál nekünk, de meghívom Önt, hogy kísérletezzen még néhánymal; elvégezhetünk felügyelet nélküli szkripteket az RSA kulcsok segítségével, az X munkameneteket (grafikus mód) átirányíthatjuk grafikus környezetünkbe, csak néhányat említve.