пятница, 2 июля 2010 г.

Мосты демонов

Долгое время у меня были проблемы с пробиванием ssh туннелей, никак не мог уяснить кто на ком стоял.

Но вроде счас уяснил и потому расскажу на пальцах как бы это было понятно для меня сразу. Если кому пригодится - буду рад.

Сразу оговорюсь что этот пост не ставит собой цель научить строить туннели как таковые.
Цель - по простому объяснить логику ssh демона в плане построения туннелей.

Итак приступим.

Естественно рассматривать будем на примере



Наша рабочая станция - хост1, нам надо добраться до какой либо службы на хост4 но непосредственно нам доступна только машина хост2.

Команда для подобного туннеля выглядит так
ssh -f -N -L локалхост:порт1:хост4:порт4 логин@хост3

Суть ее следующая
Запросы приходящие на "локалхост:порт1" отправлять на "хост4:порт4" используя промежуточный хост "логин@хост3", полученные в ответ данные вернуть на "локалхост:порт1".

т.е. ssh демон на той машине на которой будет выполнена команда задружится с демоном на "хост3" и будет через него передавать данные службе находящейся на "хост4" и отображать их на своем порту "порт1".
Т.е. для наших целей мы должны выполнить команду на "хост2".

И тогда со своего "хост1" мы сможем обратиться к "хост2" как к аватаре нужной нам службы, естественно напрямую указав порт.

P.S. детальнее см. man

Комментариев нет:

Отправить комментарий