суббота, 15 января 2011 г.

SSH под Windows или как мы настроили защищенный удаленный рабочий стол. (Часть 2)

В прошлой статье мы установили SSH-сервер и сгенерировали пару ключей. Теперь же я просто покажу как можно подключиться к этому всему и как пробросить  RDP-порты.

Итак Putty мы уже установили, поэтому запустим его и приступим к настройке подключения. На вкладке Session:



Внесем IP-адрес нашего SSH-сервера и порт на котором он ждет подключения. Здесь же можно после окончания всех настроек сохранить сессию, чтобы конфигурировать все каждый раз.
Далее перейдем на закладку Windows->Translation:



Здесь мы вручную укажем кодировку СР866, потому что именно в ней нам будет выдавать консоль ОС Windows.
Перейдем на вкладку Connection->Data:


На данной вкладке укажем укажем логин пользователя, для того чтобы не вводить его каждый раз вручную. И перейдем на вкладку Connection->SSH->Auth:



Нажмем на ней кнопку Browse и укажем путь к приватному ключу. Теперь вернемся на вкладку Session и сохраним настройки под любым именем.
А теперь коннект! Смело жмем Open и если все правильно, то выскакивает окно сообщающие цифровую подпись ssh-сервера, нажмем здесь Yes (это нужно для того, чтобы в следующий раз ваш пк знал, что подключился к правильному серверу). Далее мы видим приглашение ввести кодовую фразу:


После ввода корректной фразы у вас откроется штатная консоль управления с правами System (так что осторожней). После того как мы все сделали пишем команду EXIT, для корретного закрытия сессии.
Ну вот коннектиться к шеллу удаленной машины мы можем, теперь самое вкусное - проброс портов!

Для этого все настройки оставляем как в первом случае только добавляется еще одна на вкладке Connection->SSH->Tunnels:



Тут в "Source port" мы пропишем любой свободный локальный порт нашего пк, например: 9999, а в Destination пропишем IP-адрес сервера внутри локальной сети (на который мы хотим пробросить RDP). Выставим флаги Local и IPv4. И сохранив конфигурацию нажмем Open и введем парольную фразу.

И что? - спросите вы- Перед нами опять системная консоль!
Да консоль та! - скажу я - Да сессия не та! :)

Консоль не закрываем! Открываем RDP-клиент (например тот что зовется "Удаленный рабочий стол") и коннектимся по адресу - localhost:9999



Жмем Подключить и...



видим стандартное окно логина, как будто мы с сервером в одной локальной сети :)
Все, устойчивых вам коннектов!

2 комментария:

German комментирует...

freeSSHd при этом обрывает связь по тайм-ауту, т.к. в терминалке ничего не происходит.
А отключать таймаут на сессию как-то не правильно.

kosmoflyko комментирует...

Да, я тоже столкнулся с этой проблемой. Решением возможно станет поднятие VPN сервера, но пока я не стал заморачиваться.