SSH port forwarding

Проброс портов по ssh — то, что должен знать каждый уважающий себя админ. Суть вопроса в следущем:
Допустим у вас есть сервер с unix (на цисках и прочих девайсах поддерживающих ssh не проверял), назовем его узел А, а есть еще один компьютер, назовем его узел Б.

Как можно использовать ssh канал?

1. Консоль. С этим все знакомы.
2. scp (или если использовать PuTTY pscp) — копирование файлов с узла А на узел Б и обратно через секурный туннель.
3. Проброс портов с одного узла на другой.

Предполагаю, что первые два варианта всем известны и понятны, поэтому их рассматривать не буду.
Собственно порт форвардинг: вариант первый — на сервере есть интернет, и есть желание его заюзать на другом компе, при этом мутить прокси нет желаниявозможности.

Все просто, в PuTTY (если под виндой), или в опциях ssh (это в линукс), делаем:

затем как обычно соединяемся с хостом, вводим логинпароль…. и все! С этого момента у вас на порту 8080 висит socks прокся. Теперь указываем в огнелисе в качестве прокси localhost:8080

и весь траффик огнелиса пойдет по шифрованному каналу через ssh сервер.

Там же, в Putty рядом с туннелем, зоркий глаз вероятно заметил X11, и как нетрудно догадаться, протокол ssh подволяет пробрасывать траффик X сервера. Эту функцию обьясню на примере линуксового ssh клиента.

Допустим узел А — линукс сервер с ssh и запущенным X11 сервером, узел Б — рабочая станция с линуксом.
на узле Б в консоли пишем ssh -X ип.адрес.узла.Б, жмем enter и попадаем в консоль сервера. Но теперь это не просто консоль, фокус в том, что если вы запустите в ней, например mplayer, то на вашей рабочей станции (узле Б), появится окно mplayer, но при этом, запущен плеер будет на сервере (узел А), и соответственно ресурсы он будет с сервера хавать, а на рабочей станции только отрисовывать окно и его содержимое.

Т.е. возвращаясь к варианту с проксированием инета, можно так запустить firefox и необходимость в проксировании отпадет, т.к. браузер будет выполняться на сервере, и инет он будет серверный хавать.

Что бы то же самое сделать под виндой, вам потребуется чтото вроде CygWin/X или како — то другой X сервер под винду. В остальном же все будет так же. Т.е. под виндой будет отображаться окно запущенной на линуксе программы.

В общем ssh достаточно интересная штука, гугль про нее много знает, если что.
Но если есть вопросы, спрашивайте, по возможности отвечу.

Добавить комментарий

Войти с помощью: