Как я искал нормальный RDP-клиент и нашел целых три

Remote Desktop Protocol — один из самых распространенных протоколов для удаленного управления, потому что он используется для работы с операционными системами Windows, которые часто незаменимы в корпоративной среде. Естественно, самый распространенный способ подключения к удаленной системе — использование средств встроенных в саму систему, но он не единственный и, более того, совершенно неприменимый, если используется другая ОС или сильно устаревшая Windows.

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

MobaXterm

Эта программа для Windows. Немного неправильно называть MobaXterm RDP-клиентом, потому что это целый комбайн. Список поддерживаемых протоколов впечатляет: SSH, Telnet, Rlogin, RDP, VNC, XDMCP, FTP, SFTP и Serial.

Почему я рекомендую этот клиент? Меня уже давно не радует Putty. Громоздкий и запутанный интерфейс из времен W95, не вызывающий ностальгию, если приходится часто с ним работать, плохая поддержка экранов высокого разрешения, собственный формат ключей, отсутствие поддержки вкладок и прочее. MobaXterm лишен всех этих недостатков, это удобная и современная программа. Портативная версия состоит из одного единственного exe’шника и файла настроек, интерфейс интуитивный, а если нужна помощь, то, в отличии от Putty, в самой программе есть исчерпывающая документация.

Кроме соединения через перечисленные протоколы можно локально поднимать некоторые сервисы для удаленного доступа, такие как: FTP, SSH/SFTP, HTTP и другие. Если вы не любите консольные nano и vi, то в программе есть текстовый редактор с удобным графическим интерфейсом. В терминале есть настраиваемая подсветка синтаксиса и автодополнение.
Сразу после запуска программа нашла ранее используемые мной подключения, импортировала настройки из Putty и обнаружила установленную в системе WSL-Ubuntu:

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

Apache Guacamole

Современные тенденции DevOps предполагают перенос окружения для разработки с локальной машины на сервер компании или к облачному провайдеру. Один из простых примеров ранее описывался в статье: Установка Visual Studio Code в облаке, приложения для удаленного подключения этого тоже не избежали.

Apache Guacamole, это клиентский шлюз для удаленного подключения, работающий на HTML5, позволяет пользоваться протоколами: VNC, Telnet, RDP, Kubernetes и SSH / SFTP — через web-интерфейс. Не требуется установки никаких программ, подписок на сторонние сервисы, все работает прямо в браузере, независимо от того, какой операционной системой пользуется разработчик. Все что требуется: установить и настроить службы на сервере. По сути, это web-интерфейс для FreeRDP — бесплатной реализации протокола RDP, с открытым исходным кодом.

Сценарий работы с этим сервисом типичен для последних тенденций удаленной работы и оптимизации рабочего места. Разработчики подключаются к своему окружению из любой точки земного шара. Им не требуется держать дома мощный десктоп или носить с собой высокопроизводительный ноутбук, забота об этом перекладывается на серверы компании, а работнику достаточно подключения к интернету и любого ноутбука, на котором не будет лагать браузер.

Настройка сервиса подробнейшим образом документирована, мануал впечатляет своими размерами. Установка возможна несколькими способами: из репозиториев, компиляция исходников и разворачивание образа Docker. К счастью, как это часто бывает, один прошаренный DevOps-инженер решил автоматизировать процесс установки с наиболее типичными настройками и выложил готовый скрипт на github: guac-install. Из его кода легко понять, что он пошел по пути установки образа Docker, и все действия сводятся к вводу всего нескольких команд.

Начнем с того, что настроим виртуальный сервер для установки AG. Его характеристики будут зависеть от количества пользователей, но разработчики рекомендуют не меньше 2 гигабайт оперативной памяти. Размещение сервера выберем в Москве, для минимального пинга, что критично для работы с удаленными компьютерами.

В качестве тестовой машины я выбрал такие параметры VPS:

После того, как будет создана виртуальная машина, подключимся к ней (используя MobaXterm, конечно же). Теперь можно приступать к работе.

Сначала надо скачать скрипт установки:

wget https://git.io/fxZq5 -O guac-install.sh

Выдать ему разрешение на исполнение:

chmod +x guac-install.sh

И запустить:

./guac-install.sh

В процессе работы будут установлены нужные образы и задано несколько вопросов о настройке паролей для MySQL. В конце скрипт выдаст сообщение о том, что установка завершена, напишет адрес для подключения к сервису и сообщит пароль/логин, который настоятельно порекомендует потом поменять:

Installation Complete
- Visit: http://localhost:8080/guacamole/
- Default login (username/password): guacadmin/guacadmin
***Be sure to change the password***.

Все готово, надо только заменить localhost на внешний айпи-адрес нашего сервера и ввести пару логин/пароль в форму логина на сайте:

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

При первом логине система запросит настройку двухфакторной авторизации, на экране появится QR-код, который надо будет отсканировать с помощью любого удобного приложения. Я воспользовался для этого Google Authenticator на смартфоне. После сканирования приложение сгенерирует шестизначный код, который потребуется ввести в поле на сайте.

В качестве примера подключимся к серверу под управлением Windows по протоколу RDP. Для этого надо зайти в “Настройки” и выбрать опцию “Подключения”. Интерфейс переведен на несколько языков, и сложностей при работе с ним ни у кого не возникнет.

Дальше надо заполнить следующие поля (я перечислю минимально необходимые):
В разделе “РЕДАКТИРОВАНИЕ ПОДКЛЮЧЕНИЯ” заполнить поле “Название” и в поле “Протокол” выбрать “RDP”.

В разделе “СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ” поставить требуемые числа в поля “Максимальное число соединений” и “Максимальное число соединений на пользователя”. Любое необходимое, но не меньше 1.

В разделе “НАСТРОЙКИ” и подразделе “Сеть” ввести айпи-адрес удаленного сервера под управлением Windows и “Порт”: 3389.

Далее заполнить поля “Имя пользователя” и “Пароль”. В моем случае еще потребовалось отметить опцию “Игнорировать сертификат сервера”.

Остальное настройки заполняются по необходимости, в зависимости от специфики серверов, к которым требуется подключаться.

В итоге выглядит это примерно так:

В самом низу страницы нажимаем кнопку “СОХРАНИТЬ” и можно подключаться с главной страницы панели управления:

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

Myrtille

На основе FreeRDP разрабатывается еще один проект: Myrtille, аналогичный Apache Guacamole, но работающий на системе Windows. Его установка — традиционный Windows-way, надо всего лишь скачать файл инсталлятора с GitHub и запустить его. Приложение поддерживает двухфакторную авторизацию и позволяет настроить ее в процессе установки:

В следующем диалоговом окне можно настроить работу с Active Directory:

А затем порты для подключения:

Далее следует диалог с выбором опций для установки сертификата, драйвера для PDF-принтера и разрешения множественных подключений:

Потом выбирается директория, куда будет устанавливаться программа и запускается процесс установки. На этом все, сервисом можно пользоваться, перейдя по ссылке: https://ip-address/Myrtille/, где вместо ip-address надо подставить адрес сервера и web-клиент готов к подключению:

Надо заметить, что он не позволяет управлять группами пользователей и подключениями как AG и довольно аскетичен в настройках. Меню сервиса хоть и не блещет красотой, но вполне функционально:

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

Let’s block ads! (Why?)

Read More

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *