↑↑↑

↓↓↓
Flag of Russia Flag of UK
🏠 | 💻 PC | IT-Helpdesk |

Access with RDP via SSH tunnel


Goal is to connect to server behind router from the external network.

If you have found this page by request

Port forwarding in Putty

you can go directly to Putty Tunnel

Setup is depicted below ↓ конфигурация подключения по rdp через SSH

The task itself is quite challenging and can be separated into six smaller steps

1. SSH server setup 2. SSH client setup
3. Port-forwarding on router 4. Starting Client Session
5. Configuring RDP on server side 6. Connection by RDP from client
We will need router, putty and freesshd.

1. SSH server setup

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



🔝

2. SSH client setup

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



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

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

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

2.22) Создаём туннель
Порт 3389 это стандартный порт для RDP. Порт 3391 мы будем использовать на клиенте как "вход" в туннель. Изображение ниже показывает, что мы поставили в соответствие локальному порту 3391 порт 3389 на IP 192.168.0.101

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

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

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

Внешний IP сервера это IP роутера. На картинке он замазан, в Вашем случае это будет Ваш внешний IP, т.е. что-то похожее на 78.47.141.187
конфигурация подключения по rdp через SSH 🔝

Port-forwarding on router

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

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



🔝

Starting Client Session

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







🔝

Configuring RDP on server side

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









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



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







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







🔝

Connection by RDP from client

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

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

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

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

Заметка для 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

Похожие статьи:

1 🖧 Remote Desktop
2 - RDP access from Windows via SSH tunnel
3 🄭 Access to remove CDROM via RDP
4 - Installing Windows on GPT disk
5 - Developer Mode in Windows 10
6 - Adding Scripts to Autostart
7 - Environmental variable PATH
8 - Bash in Windows 10
9 - Batch files
10 - Grep, sed, awk
11 📀 Burning Images with Ultraiso
12 Windows Hotkeys
13 - List of Installed Drivers in Windows
14 🔥 Firewall Windows



Share in social media: