Ssh подключение к удаленному рабочему столу windows

Соединение с удалённым компьютером по протоколу RDP через SSH туннель
Содержание

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

Введение

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

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

здесь

конфигурация подключения по rdp через SSH изображение с сайта www.andreyolegovich.ru

Нормальные ноутбуки на сайте —

OLDI

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

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

  2. Настройка SSH клиента

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

  4. Открытие сессии клиентом

  5. Настройка RDP на сервере

  6. Подключение по RDP с клиента

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

Роутер должен поддерживать

Port Forwarding

приобрести онлайн можно в магазинах:

  • Xiaomi

  • OLDI

  • https://fas.st/QaMjsd

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

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

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

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

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

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

конфигурация подключения по rdp через SSH изображение с сайта www.andreyolegovich.ru

Если Вам нужен нормальный ноутбук, а не как у меня на картинке — заходите на сайт

OLDI

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

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

Putty на клиенте

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru
Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru
Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru
Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru
Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru
Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru
Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

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

Чтобы не помешать никому работать — можно проверить подключён ли кто-то
к компьютеру или нет. Сделать это можно с помощью

PSTools

инструкция находится

здесь

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

Подключение к удалённому рабочему столу RDP через туннель SSH изображение с сайта www.andreyolegovich.ru

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

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

IT
SSH
PuTTY
Telnet
PSTools
FreeSSHD
Компьютерные сети
Как создать туннель
Как сделать проброс портов

Have you ever been in a situation where you needed to perform remote administration on a Windows Server, and the RDP port 3389 is blocked on a firewall? Did you know you can tunnel RDP over SSH with PuTTY? This particularly comes in handy when there is no VPN available to the remote network… Here is how to tunnel Remote Desktop (RDP) over SSH with PuTTY.

Proxy connections with SSH

SSH can proxy connections both forward and backwards. It creates a secure connection between a local computer and a remote machine through which services can be relayed. Because the connection is encrypted, SSH tunneling is useful for transmitting information that uses an unencrypted protocol, such as IMAP, VNC, or IRC. And RDP :)

SSH can proxy connections both forward and backwards, by opening a port on either the local machine running the SSH client, or the remote SSH server. If you have privileges to do so of course.

For example, if you want to connect to a remote host on RDP port 3389, but you don’t have direct access to reach that machine because of firewall or network restrictions, the SSH client can listen on a local port and pretend that it is the remote machine. All connections to that port will be sent through the SSH server to the remote host.

Reconfigure PuTTY for Remote Desktop Protocol (RDP) tunneling through ssh

To tunnel Remote Desktop Protocol over ssh using PuTTY, all you need is an account on the premises. For example a firewall or Linux server with ssh access, and PuTTY on your Windows desktop. PuTTY is a nifty ssh client for Windows that you can download here.

Once you are connected to your remote network with ssh/PuTTY, you need to reconfigure the connection to support SSH-tunneling. In the PuTTY Reconfiguration screen, go to Connection → SSH → Tunnels. This is where we can set up an SSH tunnel for Remote Desktop.

Under Source port, add your local IP address and port. Because the RDP 6+ client in Windows has issues with the loopback to TCP Port 3390, you need to use a different port. I use TCP port 3388 on IP address 127.0.0.2, and my remote internal IP address and RDP port 3389 as Destination (192.168.48.211:3389). See the image:

SSH port forwarding in PuTTY

SSH port forwarding in PuTTY

After clicking Apply, the SSH-tunnel for remote desktop is active, and you can connect the Remote Desktop Connection to 127.0.0.2:3388:

Remote Desktop Connection through SSH tunnel

Remote Desktop Connection through SSH tunnel

For Windows, PuTTY is the de-facto standard SSH client.

Tunnel RDP using OpenSSH and PowerShell in Windows 10

If you have the OpenSSH client installed in Windows 11/10, then you can use a command similar to Linux’ ssh tunnel:

ssh -N -L 13389:[Windows Server RDP address]:3389 [address ssh server] -l [ssh username]

Code language: CSS (css)

To ease the usage, I wrapped in a PowerShell script, that connects to my on-premise stepping-stone host with ssh:

$remHost = (Read-host -Prompt ("RDP host: ")) Write-Output "Setting up an SSH RDP tunnel with ${remHost}" Start-Process ssh -ArgumentList "-N -L 13389:${remHost}:3389 -l [ssh username] steppingstone-host.example" -Verb open [void](Read-Host 'Press Enter to continue...') &mstsc /V:localhost:13389 /w:800 /h:600 /prompt

Code language: JavaScript (javascript)

use this PowerShell one-liner to verify whether OpenSSH client is installed on your Windows 10 system. It should print Installed.

(Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Client*').State

Code language: JavaScript (javascript)

You find more ssh tips in my post Windows 11/10 and WSL 2 DevOps environment.

How to tunnel Windows Remote Desktop (RDP) through ssh on Linux

When you are in a situation where you are on a Linux work station and need to tunnel RDP through ssh in Linux, you can use the following ssh port forwarding, or tunnel (assuming you have an on-premise Linux server to SSH into to set up the port forward):

ssh port forwarding / tunnel set-up for RDP

ssh -N -L 13389:[Windows Server RDP address]:3389 [address ssh server] -l [ssh username]

Code language: CSS (css)

Now you can connect your RDP client to 127.0.0.1:13389 as if it were the remote server.

Some Remote Desktop clients for Linux are:

  • KRDC – KRDC is a client application that allows you to view or even control the desktop session on another machine that is running a compatible server. VNC and RDP is supported
  • Remmina – A feature rich Remote Desktop Application for Linux and other Unixes
  • rdesktop – rdesktop is an open source UNIX client for connecting to Windows Remote Desktop Services, capably of natively speaking Remote Desktop Protocol (RDP) in order to present the user’s Windows desktop
  • xfreerdp – FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license

Or do you need to change port forwarding options in an existing ssh connection?

Tunnel ssh using sshuttle

Another great option is to tunnel ssh using sshuttle, on GNU/Linux. From its manpage:

sshuttle allows you to create a VPN connection from your machine to any remote server that you can connect to via ssh, as long as that server has python 2.3 or higher.
To work, you must have root access on the local machine, but you can have a normal account on the server.

It’s valid to run sshuttle more than once simultaneously on a single client machine, connecting to a different server every time, so you can be on more than one VPN at once.

If run on a router, sshuttle can forward traffic for your entire subnet to the VPN.

If you have an on-premise host / hop / stepping stone, you can use the following sshuttle example:

sshuttle -r username@steppingstone-host.example 192.168.0.0/16

Code language: CSS (css)

This’ll easily create a VPN (Virtual Private Network) connection from your machine to any remote server that you can connect to via ssh. Unfortunately you cannot use sshuttle from Windows Subsystem for Linux (WSL) in Windows 10, yet: Command: ” iptable -L ” is not working.

More OpenSSH in Windows Server and Windows 11 / Windows 10, the series

Here on Sysadmins of the North are more posts in a series of posts about OpenSSH in Windows. Whether it’s Windows Server or Windows 11 / 10. You may find these posts interesting:

  • Tunnel RDP through SSH & PuTTY
  • How to share OpenSSH keys with WSL in Windows 10
  • Manually install OpenSSH in Windows Server
  • Retrieve SSH public key from Active Directory for SSH authentication
  • Windows 11/10 and WSL 2 DevOps environment
  • YubiKey support in OpenSSH for Windows 11 and Windows 10
  • Connect to a KVM host through an ssh tunnel and arbitrary port in Windows 11 and WSL 2

I hope you like it, let me know.

Вы можете использовать встроенный OpenSSH сервер в Windows для проброса портов через SSH-туннель (SSH туннелирования). Перенаправление портов в SSH позволяет туннелировать (пробрасывать) порты приложений с локального компьютера на удаленный сервер и наоборот. Проброс портов через SSH туннель широко используется в среде Linux/Unix, а теперь вы можете воспользоваться этим возможностями и в Windows. В этом примере мы покажем, как пробросить RDP подключение через OpenSSH на хосте Windows Server.

Содержание:

  • Для чего нужны SSH-туннели?
  • Защищенный доступ к RDP через SSH туннель (local TCP forwarding)
  • SSH туннель в Windows с помощью Putty
  • Переброс удаленного порта на локальную машину (Remote TCP forwarding)

Для чего нужны SSH-туннели?

SSH-туннель обеспечивает защищенное шифрованный TCP соединение локальных хостом и удалённым сервером SSH. SSH Port Forwarding позволяет туннелировать поверх SSH подключение к локальному порту на локальном компьютере к любому TCP порту на удаленном сервере (или наоборот)

Порт форвардинг в SSH-туннелях применяются для:

  • Обхода межсетевых экранов;
  • Открытия бэкдоров в частные сети;
  • Организации простых VPN/прокси сценариев для безопасного удаленного подключения;
  • Защиты трафика устаревших приложений (протоколов), которые передают данные в открытом тексте (без шифрования).

Вы можете перенаправить в SSH туннель только TCP трафик/порт (UDP и ICMP протоколы не поддерживаются).

Проброс портов через SSH туннель можно использовать в сценариях, когда нужно подключиться к удаленному компьютеру, который защищен межсетевым экраном. Например, у вас имеется сервер c Windows, на котором наружу открыт только SSH порт (TCP 22). Все остальные порты блокируются аппаратным межсетевым экраном или Windows Defender Firewall Windows. Ваша задача подключиться к рабочему столу этого Windows сервера с помощью клиента RDP. Казалось бы, невозможная задача, т.к. порт RDP 3389 блокируется брандмауэром. Однако вы можете получить доступ к любому открытому порты на удаленном хосте через SSH-тунель.

Чаще всего используются следующие сценарии проброса через SSH:

  • Local TCP forwarding — проброс локального порта на удаленный сервер;
  • Remote TCP forwarding — проброс удаленного порта на локальный компьютер;
  • Двойной SSH туннель – позволяет соединить между собой через SSH сервер компьютеры без выделенных белых IP адресов или находящиеся за NAT (если не подходит решение с OpenVPN)

Защищенный доступ к RDP через SSH туннель (local TCP forwarding)

В этом режиме вы создаете на своем компьютере локальный TCP порт, подключения к которому перенаправляются через SSH туннель на указанный порт удаленного сервера. В этом примере мы создадим локальный порт 8888, при подключении к которому выполняется перенаправление на RDP порт 3389 на удаленном компьютере. Общая схема подключения выглядит так:

Windows OpenSSH - тунерирование RDP через SSH в Windows 10 / Windows Server 2018

Для проброса портов нам потребуется SSH клиент. Можно использовать сторонний клиент (например, Putty), но я буду использовать встроенный SSH клиент в Windows. Чтобы установить клиенте OpenSSH, выполните в консоли PowerShell команду:

Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Client*'

Чтобы создать SSH туннель с удаленным компьютером 192.168.1.90, выполните команду:

ssh -L 8888:192.168.1.90:3389 [email protected]

В этом примере используется формат
LOCAL_PORT:DESTINATION:DESTINATION_PORT
и
[email protected]_SERVER_IP
(имя пользователя и адрес удаленного SSH сервера)

Чтобы SSH туннель работал в фоновом режиме, нужно добавит параметр f.

ssh - локальное перенаправление портов в windows

Теперь, чтобы подключится к удаленному компьютеру по RDP через SSH туннель, вам запустить RDP-клиент (mstsc.exe) и подключиться на локальный порт 8888 своего компьютера:

127.0.0.1:8888

rdp на локальный порт

Выполните аутентификацию на удаленном компьютере и можете спокойно работать в RDP-сессии. С помощью команды Get-NetTCPConnection или утилиты TCPView вы можете убедиться, что RDP подключение установлено локально (RDP подключение инициировано запущенным локально SSH сервером):

Get-NetTCPConnection -State Established|where {$_.localport -eq "3389"}|fl

проброс rdp порт 3389 через ssh туннель

При этом порт TCP/3389 на сервере не доступен с удаленного компьютера. Вы можете проверить доступность порта с помощью командлета Test-NetConnection:

Test-NetConnection 192.168.1.90 -port 3389

TcpTestSucceeded       : False

Test-NetConnection проверить доступность порта

Обратите внимание, что если вы перенаправляете таким образом незашифрованный трафик приложения, то по сети он передается в зашифрованном виде. Трафик шифруется на одном конце SSH соединения и расшифровывается на другом.

Другие компьютеры в вашей локальной сети смогут одновременно подключиться к удаленному RDP серверу Windows, даже если у них полностью заблокирован прямой доступ к удаленному серверу (как по SSH, так и по RDP). Для этого, они должны подключиться RDP клиентом к порту 8888 на компьютере, на котором создан SSH туннель:

mstsc.exe /v 10.10.1.220:8888

ssh порт форвардин для RDP в Windows в локальной сети

Защита RDP подключения с помощью SSH туннеля может быть хорошей альтернативой VPN для доступа к публичным Windows хостам в Интернете. В этом случае вам не нужно открывать прямой доступ к порту RDP/3389 из Интернета к хосту Windows. Достаточно открыть только порт SSH/22, что защитит вас от атак подбора пароля по RDP и эксплуатации 0-day RDP уязвимостей.

Для автоматического ввода пароля для подключения к SSH можно использовать утилиту sshpass. Ее можно запустить через подсистему WSL2 для Windows.

Установите sshpass в Ubuntu WSL:

$ sudo apt-get -y install ssphass

Запустите клиент Remote Desktop Connection (mstsc.exe) и сохраните в Windows RDP файл с настройками подключения:

Computer : localhost:8888
User name : remoteusername

Для автоматического подключения к удаленном RDP хосту с сохранённым паролем SSH, используйте такой bat файл:

start /min wsl sshpass -p "password" ssh -L 8888:192.168.31.90:3389 [email protected]
powershell sleep 5
start mstsc C:rdplocalhost-33389.rdp

Или (предпочтительно) настройте SSH аутентификацию по ключам.

SSH туннель в Windows с помощью Putty

Рассмотрим, как настроить SSH туннель в Windows с помощью популярного SSH клиента Putty.

  1. Запустите PuTTY и перейдите в раздел Connection -> SSH -> Tunnels;
  2. В поле Source port укажите локального порта (в нашем примере это 8888);
  3. Укажите IP адрес сервера SSH и порт на удаленном хосте, на который нужно выполнить переадресацию:
    192.168.31.90:3389
  4. Выберите Local в качестве Destination и нажмите Add;добавить ssh тунель в putty
  5. Чтобы не открывать shell удаленного хоста при подключении через туннель, включите опцию Don’t start a shell or command at all в разделе SSH;putty не запускать shell при старте ssh тунеля
  6. Вернитесь на вкладку Session, укажите имя или IP адрес удаленного SSH хоста и порт подключения (по умолчанию порт 22). Чтобы сохранить настройки подключения, укажите имя сессии в поле Saved Session и нажмите Save;сохранить сессию в putty
  7. Теперь вы можете запустить сохраненный SSH туннель в Putty прямо и панели задач Windows.быстрые ссылки Windows putty для запуска ssh туннеля

Переброс удаленного порта на локальную машину (Remote TCP forwarding)

Есть еще один вариант применения SSH туннеля – remote TCP forwarding. Через SSH туннель вы можете открыть доступ удаленному серверу к локальному порту на вашем компьютере или порту на другом компьютере в вашей локальной сети. Например, вы хотите, чтобы внешний сервер (192.168.1.90) получил доступ к вашему Интранет сайту (не опубликованному в Интернете). Для создания обратного туннеля, используйте такую команду:

ssh -R 8080:internalwebsever:80 [email protected]

Теперь, чтобы на удаленном SSH сервер получить доступ к веб серверу internalwebsever достаточно в браузере набрать адрес
http://localhost:8080
.

С помощью SSH туннелей вы можете строить целые цепочки для форвардинга портов. Включить или отключить SSH туннелирование можно в конфигурационном файле OpenSSH (sshd_config) с помощью директив:

AllowStreamLocalForwarding yes
AllowTcpForwarding remote
PermitTunnel no

Данные опции неприменимы для текущей версии OpenSSH в Windows.

You need to connect to the server via SSH (for servers based on Linux) or via RDP (for servers based on Windows) to manage it remotely (for example, from your local computer).

Connection via SSH

SSH protocol is used to connect to the servers running Linux. SSH protocol allows you to securely manage the server over the network.

You can connect to the server:

  • using login and password from the Control panel – in this case, each time you connect to the server, you need to enter your password;
  • using a pair of generated SSH keys – in this case, you do not need to enter your password, the user is identified at the first connection. A key pair is used: the public key is hosted on the server, and the private key is stored on the user’s PC. Please note that you can connect to the server via SSH only from the computer where the private SSH key is stored.

The data specified on the Operating system tab of the server page in the Control panel are used to connect to the server:

  • server’s public IP address (IP field);
  • root login and password for accessing the system (Username and Password fields).

Connection via SSH on Linux / macOS

To connect to the server via SSH, run the following command in the terminal:

ssh root@<server IP>

Where server IP is server’s public IP address.

The system will request a password from the server, you need to enter it. If you have previously created a key pair, then you do not need to specify the password to connect to the server.

Connection via SSH on Windows

In Windows 10, the connection is the same as in Linux and macOS, but through the command line (cmd.exe).

In earlier versions of Windows, the server is connected using PuTTY:

  1. Launch PuTTY.
  2. Go to the Session tab. Enter the public IP address of the server in the Host Name field, enter 22 in the Port field.
  3. Specify the SSH connection type in the Connection type field.
  4. If you connect using the previously generated keys, go to the SSHAuth tab, click Browse and select the file with a private key.
  5. Click Open to connect.
  6. Confirm the connection. In the opened console, specify the root login and password to log into the server. If you have previously created a key pair, then you do not need to specify a password to connect to the server.

Creating a Key Pair on Linux / macOS

To create a key pair:

  1. Open the terminal and run the command:
ssh-keygen -t rsa
  1. The following dialog will be displayed on the console:
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Specify the name of the file where the keys will be saved, or use the default name and path `/.ssh/id_rsa`.
  1. The system will offer you to enter a passphrase for advanced protection of the SSH connection:
Enter passphrase (empty for no passphrase):
Enter same passphrase again: 
You can skip this step.
  1. After that, a private (~/.ssh/id_rsa) and public (~/.ssh/id_rsa.pub) key will be created. The following message will be displayed on the console:
Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
The key fingerprint is:
476:b2:a8:7f:08:b4:c0:af:81:25:7e:21:48:01:0e:98 user@localhost
 
The key's randomart image is:
 
+---[RSA 2048]----+
|      ..o   o    |
|      .. * * = . |
|     .  o O o B .|
|    . .  + = = o |
|     oo S o = . .|
|    .. B . = . . |
|   .  B   o =  ..|
|  . .o.o.. o .. .|
|   .oooE    o.   |
+----[SHA256]-----+
  1. To display the public key on the console, run the command:
cat ~/.ssh/id_rsa.pub
_Please note that `~/.ssh/id_rsa.pub` is the path to the file where the public key is stored. If you changed the path in step 2, specify it._
  1. Add the public key in the Selectel Сontrol panel. Click Change OS configuration on the Operating system tab of the server page and enter the key in the SSH public field.

After creating the keys, you can connect to the server without a password.

Creating a Key Pair on Windows

In Windows 10, you can create a key pair in the same way as in Linux and macOS, but through the command line (cmd.exe).

In earlier versions of Windows, the keys are generated using PuTTY:

  1. Install PuTTY and launch the PuTTYgen app.
  2. From the Type of key to generate menu, select the RSA key type and click Generate. Move the cursor around the screen until the keys are generated.
  3. After the key pair has been created, the public key will be displayed. Click Save public key and save it in a text file, for example, in a new file id_rsa.pub.
  4. Enter a passphrase for additional security in the Key passphrase field. You can skip this step.
  5. Click Save private key to save the private key.
  6. Add the public key in the Selectel Сontrol panel. Click Change OS configuration on the Operating system tab of the server page and enter the key in the SSH public field.

After creating the keys, you can connect to the server without a password.

Connection via RDP

RDP stands for Remote Desktop Protocol. RDP is used to remotely connect to servers running Microsoft Windows.
The remote desktop connection feature is available in Windows by default. You do not need to create specific keys.

The following data is used to connect to the server:

  • public server IP address;
  • login and password for accessing the system.

Connection via RDP on Windows

To connect to a Windows server via RDP:

  1. In the search box (Start menu), type Connect to remote desktop.
  2. Enter the public IP address of the server in the Computer field in the opened window.
  3. Click Connect.
  4. Enter your login and password.
  5. Press OK.

Connection via RDP on Linux

To connect via RDP through the terminal, run the command:

rdesktop <server IP> -u <user> -p <password>

Where:

  • server IP is the public IP address of your server;
  • user and password are the login and password.

Connection via RDP on macOS

To connect to a server:

  1. Install and run Microsoft Remote Desktop.
  2. Click +. In the PC name field, enter the public IP address, in the Username and Password fields, enter your username and password.
  3. Click Save and save your changes.
  4. To connect to a remote server, double-click on the created connection in the list.

Понравилась статья? Поделить с друзьями:
  • Ssh передать пароль в командной строке windows
  • Ssh не является внутренней или внешней командой windows 10
  • Ssh клиент для командной строки windows
  • Ssh клиент для windows с графическим интерфейсом
  • Ssh клиент для windows на русском