SSH, повече от сигурна обвивка

SSH (Secure Shell) е протокол, който ни позволява сигурен достъп до отдалечени компютри, подобно на Telnet, но използва алгоритми за криптиране, които ни помагат да запазим връзката си сигурна, особено ако искаме да осъществим достъп до компютри, които изпълняват важна функция в рамките на дадена организация.

Като цяло, за достъп трябва да предоставим нашето потребителско име и адреса на компютъра, така че SSH сървърът да ни поиска паролата за достъп:

ssh usuario@equiporemoto

От момента, в който клиентът инициира първата връзка между отдалечения компютър и нас, информацията вече пътува безопасно, предотвратявайки някой да получи нашите идентификационни данни за достъп до споменатия компютър, но SSH е много приспособим протокол, който ни предлага много възможности.

SCP

Първият от тях е да можете да прехвърляте файлове между клиента и отдалечения компютър, без да е необходимо да монтирате FTP или NFS сървър, просто използвайки SCP (Secure CoPy), който повечето SSH сървъри изпълняват:

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

SSH тунелиране

Тази функция е много полезна, тъй като ни позволява да изпращаме и получаваме информация, която не е непременно командна обвивка между клиента и отдалечения компютър, например обикновено сърфиране. Ако не познаете каква полза може да има това, помислете за следното: трябва да осъществите достъп до страница, но на мястото, където се намирате, е приложена защитна стена, която блокира точно тази страница, следователно можем да направим „тунелиране“ с отдалечен компютър, който няма споменатите блокове и разглеждането на споменатата страница през нашата SSH сесия:

ssh -D 8888 usuario@equiporemoto

Веднъж свързан, нашият SSH клиент „слуша“ на порт 8888 като прокси сървър, така че да можем да конфигурираме браузъра си и целият трафик да се предава през SSH сесията

SSH тунел

Друг пример, който ми се случва, е, че поради някакво географско ограничение не можем да осъществим достъп до уеб услуга от мястото, където се намираме, когато правим тунела, каза, че уеб услугата открива IP на нашия отдалечен сървър като източник, а не на клиента ни. Това е донякъде еквивалентно на VPN (виртуална частна мрежа)

Обратен SSH

Ако по някаква причина се нуждаем от достъп до компютър, който е зад защитна стена и той не ни позволява да пренасочваме SSH трафик към него, можем да направим „обратен SSH“, по такъв начин, че този компютър да се свърже с друг SSH сървър, на с които също можем да се свържем, за да получим достъп до оборудването зад защитната стена. Пример, който ни идва наум, е когато искаме да помогнем на приятел, който няма представа как да конфигурира пренасочване на модема си, но трябва да имаме достъп до компютъра му отдалечено:

Приятел -> Модем -> SSH сървър <- За нас

Стъпките, които трябва да следвате, са относително много прости:

Приятел
ssh -R 9999:localhost:22 usuario@servidorssh

нас
ssh usuario@servidorssh
След като влезем в SSH сървъра, можем да се свържем с екипа на нашия приятел, използвайки
ssh amigo@localhost -p 9999

Както можете да видите, цялата магия се крие в параметъра -R, който казва на междинния сървър, че на порт 9999 компютърът на нашия приятел слуша сега като сървър.

Това са само някои възможности, които ни предлага SSH, но ви каня да експериментирате с някои други, например; можем да правим скриптове без надзор, използвайки RSA ключове, да пренасочваме X сесии (графичен режим) към нашата графична среда, само за да споменем няколко.


Добавяне като предпочитан източник в Google