Удаленный рабочий стол windows ssh

Подключение к серверу по SSH/RDP

Чтобы управлять сервером удаленно, например со своего локального компьютера, нужно подключиться к нему по протоколу SSH (для серверов на базе ОС Linux) или RDP (ОС Windows).

Подключение к серверу по SSH

Для подключения к серверам с ОС Linux используется протокол SSH. Он позволяет безопасно управлять сервером по сети.

Подключиться к серверу можно:

  • по логину и паролю из панели управления — в таком случае при каждом подключении к серверу нужно вводить пароль;
  • по паре сгенерированных SSH-ключей — при таком подключении вводить пароль не нужно, пользователь идентифицируется при первом подключении. Используется пара ключей: открытый ключ размещается на сервере, а закрытый ключ хранится на компьютере пользователя. Примечание: подключиться к серверу по SSH можно только с того компьютера, на котором хранится закрытый SSH-ключ.

Для подключения к серверу используются данные, которые указаны в панели управления на вкладке Операционная система на странице сервера:

  • публичный IP-адрес сервера (поле IP);
  • логин root и пароль для доступа в систему (поля Username и Password).

Подключение по SSH из Linux / macOS

Для подключения к серверу по SSH введите в терминале команду:

Где server IP — публичный IP-адрес сервера.

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

Подключение по SSH из Windows

В Windows 10 подключение происходит так же, как в Linux и macOS, но через командную строку (cmd.exe).

В более ранних версиях Windows подключение к серверу происходит с помощью PuTTY:

  1. Запустите PuTTY.
  2. Перейдите на вкладку Session. В поле Host Name укажите публичный IP-адрес сервера, а в поле Port — 22.
  3. Укажите тип соединения SSH в поле Connection type.
  4. Если вы подключаетесь с помощью ранее сгенерированных ключей, перейдите на вкладку SSHAuth, нажмите Browse и выберите файл с приватным ключом.
  5. Нажмите Open, чтобы подключиться.
  6. Подтвердите подключение. В открывшейся консоли укажите логин root и пароль для входа на сервер. Если вы ранее создавали пару ключей, то для подключения к серверу пароль указывать не требуется.

Создание пары ключей в Linux / macOS

Чтобы создать пару ключей:

Откройте терминал и выполните команду:

В консоли появится следующий диалог:

Укажите имя файла, в котором будут сохранены ключи, или используйте имя и путь по умолчанию /.ssh/id_rsa .

Система предложит ввести кодовую фразу для дополнительной защиты:

Этот шаг можно пропустить.

Читайте также:  Ahci controller unavailable linux

Будет создан закрытый ключ (

/.ssh/id_rsa ) и открытый ключ (

/.ssh/id_rsa.pub ). В консоли появится следующее сообщение:

Для вывода открытого ключа в консоль выполните команду:

/.ssh/id_rsa.pub — это путь до файла, в котором хранится открытый ключ. Если на шаге 2 вы изменили путь, то укажите его.

Добавьте открытый ключ в панели управления Selectel — на вкладке Операционная система на странице сервера нажмите кнопку Изменить конфигурацию сервера и введите ключ в поле SSH.

После создания ключей вы можете подключаться к серверу без пароля.

Создание пары ключей в Windows

В Windows 10 создать пару ключей можно таким же образом, как в Linux и macOS, но через командную строку (cmd.exe).

В более ранних версиях Windows для генерации ключей используется PuTTY:

  1. Установите PuTTY и запустите приложение PuTTYgen.
  2. В меню Type of key to generate выберите тип ключа RSA и нажмите Generate. Перемещайте курсор по экрану до тех пор, пока не будут созданы ключи.
  3. После создания пары ключей открытый ключ будет выведен на экран. Нажмите Save public key и сохраните его в текстовом файле, например в новом файле с названием id_rsa.pub .
  4. В поле Key passphrase введите кодовую фразу для дополнительной защиты. Этот шаг можно пропустить.
  5. Нажмите Save private key для сохранения закрытого ключа.
  6. Добавьте открытый ключ в панели управления Selectel – на вкладке Операционная система на странице сервера нажмите кнопку Изменить конфигурацию сервера и введите ключ в поле SSH.

После создания ключей вы можете подключаться к серверу без пароля.

Подключение к серверу по RDP

Для удаленного подключения к серверам с ОС Microsoft Windows используется протокол удаленного рабочего стола RDP (Remote Desktop Protocol). Функция «Подключение к удаленному рабочему столу» доступна в Windows по умолчанию. Создавать специальные ключи не потребуется.

Для подключения к серверу используются данные, которые указаны на вкладке Операционная система на странице сервера:

  • публичный IP-адрес сервера (поле IP);
  • логин и пароль для доступа в систему (поля Username и Password).

Подключение по RDP из Windows

Чтобы подключиться к Windows-серверу по RDP:

  1. В поле поиска (меню Пуск) найдите и выберите Подключение к удаленному рабочему столу.
  2. В открывшемся окне в поле Компьютер введите публичный IP-адрес сервера.
  3. Нажмите кнопку Подключиться.
  4. Введите логин и пароль.
  5. Нажмите кнопку OK.

Подключение по RDP из Linux

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

  • server IP ― публичный IP-адрес сервера;
  • user и password ― логин и пароль.

Подключение по RDP из macOS

Чтобы подключиться к серверу:

  1. Установите и запустите Microsoft Remote Desktop.
  2. Нажмите +. В поле PC name введите публичный IP-адрес, в полях Username и Password введите имя пользователя и пароль.
  3. Нажмите Save и сохраните изменения.
  4. Для подключения к удаленному серверу дважды нажмите на созданное подключение в списке.

Проброс портов через SSH-туннель в Windows

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

Читайте также:  Ftp менеджер astra linux

Чаще всего проброс портов через SSH применяется в сценариях, когда нужно подключиться к удаленному компьютеру, который защищен межсетевым экраном. Например, у вас имеется сервер c Windows, на котором открыт только SSH порт (TCP 22). Все остальные порты блокируются аппаратным межсетевым экраном или брандмауэром 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 удаленного компьютера. Общая схема подключения выглядит так:

Для создания SSH туннеля с помощью встроенного SSH клиента (встроен в Windows 10 1809 и Windows Server 2019), выполните команду:

ssh -L 8888:192.168.1.90:3389 root@192.168.1.90

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

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

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

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

mstsc.exe /v 10.10.1.220:8888

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

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

Читайте также:  Как сделать чтобы windows 10 не обновляется

ssh -R 8080:internalwebsever:80 user@192.168.1.90

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

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

Создание безопасного соединения с Windows Remote Desktop с использованием туннеля SSH2

В работе системного администратора периодически возникает необходимость проверить работоспособность серверов либо установить очередное обновление и сделать это необходимо в нерабочее время. В статье показано как создать защищенное соединение к вашему рабочему компьютеру посредством протокола SSH2. Для того чтобы был возможен такой доступ, необходимо наличие внешнего IP адреса, т.е. ваша сеть должна смотреть в Интернет. На роутере должно быть настроено правило и открыт порт. Вопросы доступа на железках я описывать не буду, тут речь пойдет о настройке рабочей машины. Итак, приступим:

  1. Устанавливаем SSH сервер под WINDOWS (copSSH) – есть проблема с русскими названиями групп – перед установкой переименовываем группу Администраторы, пользователя Администратор и группу Пользователи в английский вариант.
  2. Создаем пользователя (или используем существующего) – в целях безопасности с правами обычного пользователя и паролем посложнее — и разрешаем только ему подключаться к нашему SSH-серверу.
  3. Для создания туннеля используем SSH клиента PuTTY. Создаем новую сессию

  1. В свойствах ставим версию протокола 2

  1. Создаем перенаправление портов: source port – порт на локальном компьютере к которому будем коннектиться, Destination – указываем адрес удаленного компьютера и порт на котором наш сервис, нажимаем Add

  1. Сохраняем нашу сессию для использования в будущем.
  2. Устанавливаем соединение с удаленным компьютером (Open), вводим логин пароль.
  3. Запускаем клиента, вводим адрес 127.0.0.1 и через двоеточие порт, который указывали в пункте 4 – подключаемся.

В принципе таким образом можно перенаправить любой порт.

1.Отключаем авторизацию по паролю

-В файле \etc\sshd_config ищем параметр

PasswordAuthentication и выставляем его значение в NO (если в начале строки стоит символ # — то убираем его)

-перезапускаем сервис OpenSSH

-теперь для авторизации используются только ключи, делается так:

В ПО PuTTY есть программа puttygen.exe, используем её для генерации пары ключей, запускаем, выбираем SSH2 RSA, количество бит ставим 1024 и нажимаем GENERATE

Во время генерации двигайте мышкой на пустой области в окне программы, по окончании вам необходимо сохранить ПРИВАТНЫЙ ключ в файл для дальнейшего использования (соглашаемся что passphrase пустая). Нажимаем SavePrivateKey. Выделяем и копируем текст из окна Public key, создаем в директории <>\home\ \.ssh\ файл authorized_keys и вставляем в него из буфера.

закрываем. Запускаем PuTTY и загружаем нашу сессию, идем в Auth в поле Ptivate key file for authentication выбираем наш сохраненный ПРИВАТНЫЙ ключ

Возвращаемся в SESSION и сохраняемся для использования этих настроек в дальнейшем.

Ограничиваем доступ и запрещаем запуск программ и утилит:

редактируем файл \etc\profile

запрещаем доступ ко всем файлам и папкам пользователю под которым логинимся в систему через SSH, кроме папки \home\

Оцените статью