SSH, viac ako bezpečný shell

SSH (bezpečný shell) je protokol, ktorý nám pomáha bezpečne pristupovať k vzdialeným počítačom, v podstate tak, ako to robí Telnet, ale používa šifrovacie algoritmy, ktoré nám pomáhajú udržiavať naše pripojenie zabezpečené, najmä ak chceme pristupovať k počítačom, ktoré v organizácii vykonávajú niektoré dôležité funkcie.

Spravidla je pre prístup potrebné poskytnúť naše užívateľské meno a adresu počítača, aby nás server SSH požiadal o prístupové heslo:

ssh usuario@equiporemoto

Od okamihu, keď klient iniciuje prvé spojenie medzi vzdialeným počítačom a nami, informácie už bezpečne cestujú a bránia niekomu v získaní našich prístupových údajov k uvedenému počítaču, avšak SSH je veľmi prispôsobivý protokol, ktorý nám ponúka veľa možností.

SCP

Prvým z nich je schopnosť prenášať súbory medzi klientom a vzdialeným počítačom bez nutnosti pripojenia servera FTP alebo NFS jednoducho pomocou protokolu SCP (Secure CoPy), ktorý implementuje väčšina serverov SSH:

scp archivo.tar.gz usuario@equiporemoto:/home/usuario
scp usuario@equiporemoto:/var/log/messages messages.txt

SSH tunelovanie

Táto funkcia je veľmi užitočná, pretože nám umožňuje odosielať a prijímať informácie, ktoré nie sú nevyhnutne príkazmi shellu medzi klientom a vzdialeným počítačom, napríklad bežné prehliadanie. Ak neuhádnete, aké to môže mať použitie, zamyslite sa nad týmto: musíte sa dostať na stránku, ale miesto, kde sa nachádzate, má implementovaný firewall, ktorý presne blokuje túto stránku, preto môžeme tunelovať so vzdialeným počítačom, ktorý to robí nepovedal zámky a prehliadanie uvedenej stránky prostredníctvom našej relácie SSH:

ssh -D 8888 usuario@equiporemoto

Po pripojení náš klient SSH „počúva“ na porte 8888 ako server proxy, aby sme mohli nakonfigurovať náš prehliadač a všetka komunikácia sa prenáša cez reláciu SSH

Tunel SSH

Ďalším príkladom, ktorý mi napadá, je prípad, keď z dôvodu geografických obmedzení nemôžeme pristupovať k webovej službe z miesta, kde sme. Pri vytváraní tunela uvedená webová služba zistí ako zdroj adresu IP nášho vzdialeného servera, nie adresu IP klienta. Toto je do istej miery ekvivalentné VPN (Virtual Private Network).

Reverzný SSH

Ak z nejakého dôvodu potrebujeme získať prístup k počítaču, ktorý je za bránou firewall a neumožňuje nám presmerovať na ňu prenos SSH, môžeme urobiť „spätný SSH“ tak, aby sa tento počítač pripojil k inému serveru SSH, ku ktorej sa tiež môžeme pripojiť, aby sme získali prístup k zariadeniu za bránou firewall. Ako príklad si spomenieme, keď chceme pomôcť priateľovi, ktorý nemá predstavu o tom, ako nakonfigurovať presmerovanie na svojom modeme, ale k jeho počítaču musíme získať vzdialený prístup:

Friend -> Modem -> SSH Server <- O nás

Kroky, ktoré je potrebné dodržať, sú pomerne veľmi jednoduché:

amigo
ssh -R 9999:localhost:22 usuario@servidorssh

nás
ssh usuario@servidorssh
Keď sa nachádzame v serveri SSH, môžeme sa spojiť s tímom nášho priateľa pomocou
ssh amigo@localhost -p 9999

Ako vidíte, všetko kúzlo spočíva v parametri -R, ktorý sprostredkovateľskému serveru hovorí, že na porte 9999 počítač nášho priateľa teraz počúva ako server.

Je to len niekoľko možností, ktoré nám SSH ponúka, ale napríklad vás vyzývam, aby ste experimentovali s ďalšími; môžeme robiť bezobslužné skripty pomocou klávesov RSA, presmerovať relácie X (grafický režim) do nášho grafického prostredia, spomeniem iba niektoré.


Pridať ako preferovaný zdroj v Google