RDP через SSH туннель

Contents
Introduction
Схема подключения
Шаги
Настройка SSH сервера
Настройка SSH клиента
Проброс портов на роутере
Открытие сессии клиентом
Настройка RDP на сервере
Подключение по RDP с клиента
Проброс портов в Putty - Putty Туннель
Related Articles

Introduction

Цель – безопасно подключиться к серверу за роутером из внешней сети.

Убедитесь, что вы понимаете как создать простейший SSH туннель, например, такой как здесь

конфигурация подключения по rdp через SSH image from website www.aredel.com
Нормальные ноутбуки на сайте - OLDI

Создание туннеля это довольно трудоёмкая задача, состоящая условно из шести частей.

  1. Настройка SSH сервера
  2. Настройка SSH клиента
  3. Проброс портов на роутере
  4. Открытие сессии клиентом
  5. Настройка RDP на сервере
  6. Подключение по RDP с клиента

Вам понадобятся роутер, putty и freesshd.

Роутер должен поддерживать Port Forwarding приобрести онлайн можно в магазинах:

1. Настройка SSH сервера

1.01 Установить и запустить freeSSHd. Создайте ключ, чтобы сервер не ругался, потом поменяем его на новый ключ.

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.02) Здесь есть нюансы, в данный момент я предпочитаю выбирать "Нет"

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.03) Значок freeSSHd появляется в трее, выберите Settings

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.04) Само собой, нужно выдать разрешение бранмауэру.

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.05) В разделе Authentication, разрешить только доступ по ключам

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.06) Зайти в меню Users

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.07) Добавить нового пользователя

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.08) Вид после добавления

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.09) Запустить на сервере PuTTYgen

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.10) Сгенерировать пару ключей

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.11) Публичный ключ, который останется лежать на сервере, нужно скопировать из верхнего окна

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.12) Вставить публичный ключ в текстовый редактор, проверить чтобы он был в одну строку и начинался со слова ssh-rsa

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.13) Сохранить ключ как текстовый файл, имя должно быть такое же как и пользователя, который был ранее создан (в нашем случае – sini)

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.14) Удалить расширение

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.15) Согласиться

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.16) Показать freeSSHd путь до ключа

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

1.17) Сохранить приватный ключ, который затем нужно будет перенести на клиентский компьютер В результате предыдущих манипуляций мы имеем запущенный SSH сервер и пару ключей.

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

2. Настройка SSH на компьютере клиенте

2.18) На клиентском компьютере нужно положить приватный ключ в заранее созданную для него папку

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

2.19) На клиенте запускаем PuTTY и создаем подключение с именем sini. В поле Host Name (or IP address) указываем нужный внешний ip сервера, т.к. он за роутером, это будет ip роутера. Меняем порт на 443 или какой-нибудь другой, только осмысленно.

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

2.20) В поле Auth указываем путь до приватного ключа

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

2.21) Выбираем ключ

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

2.22) Создаём туннель

Порт 3389 это стандартный порт для RDP. Порт 3391 мы будем использовать на клиенте как «вход» в туннель.

Изображение ниже показывает, что мы поставили в соответствие локальному порту 3391 порт 3389 на IP 192.168.0.101

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

2.23) Сохраняем сессию. В поле Нost Name пишем IP сервера.

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

На этом этапе у нас подготовлено SSH соединение, которое сервер слушает на 443 порту.

На всякий случай уточняю, что в этом примере IP сервера в локальной сети 192.168.0.101

Внешний IP сервера это IP роутера. На картинке он замазан, в Вашем случае это будет Ваш внешний IP, т.е. что-то похожее на 78.47.141.187

конфигурация подключения по rdp через SSH image from website www.aredel.com
Если Вам нужен нормальный ноутбук, а не как у меня на картинке - заходите на сайт OLDI

Проброс портов на роутере

3.20) Задаём на роутере привязку MAC адреса сервера к какому-нибудь ip адресу

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

3.21) Объясняем роутеру, что когда идёт запрос по 443 порту нужно передать его именно серверу (делаем Port Forwarding – Проброс портов)

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

Putty на клиенте

4.22) Открываем сессию

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

Настройка RDP - На сервере

5.23) Создаем пользователя sini

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

5.24) Обязательно создаем пароль

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

5.25) Разрешаем доступ по RDP

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

5.27) Добавляем Синего в список пользователей, которым разрешён доступ по RDP

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com
Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

Настройка RDP - На клиенте

6.28) Запускаем на клиенте mstsc (сперва нужно открыть SSH туннель, если он был открыт нужно проверить не закончилась ли сессия.

To не помешать никому работать - можно проверить подключён ли кто-то к компьютеру или нет. Сделать это можно с помощью PSTools инструкция находится здесь

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

6.29) Подключаемся к localhost:3391

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

Вводим пароль

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

6.30) Соглашаемся

Подключение к удалённому рабочему столу RDP через туннель SSH image from website www.aredel.com

Заметка для OpenBSD

Имеем компьютер в СПб (ПК_СПб), сервер на OpenBSD в МСК (СРВ_МСК) и локальный компьютер, подключенный к серверу в МСК (ПК_МСК). Цель - подлючиться с ПК_СПб к ПК_МСК через ssh туннель по rdp с помощью putty из-под Windows.

Делать нужно так же как описано по ссылке, но на первой картинке отметить

Local ports accept connections from other hosts

Source port можно выбрать любым из свободных, напрмер 6789. В поле Destination указать

Локальный_ip_ПК_МСК:3389

При подключении по RDP (последняя картинка) можно указать

127.0.0.2:6789

Related Articles
IT
SSH
PuTTY
Telnet
PSTools
FreeSSHD
Networks
Как создать туннель
Как сделать проброс портов

Search on this site

Subscribe to @aofeed channel for updates

Visit Channel

@aofeed

Feedbak and Questions in Telegram

@aofeedchat