Подключение к терминальному серверу linux

Обновлено: 06.07.2024

1. xrdp - x11 - слабоват и есть заморочки не совсем интуитивно-понятные - подключение к сессиям на сессию, приходится ломать голову - поэтому сразу перейдем к X2go

2. X2go - проброс через ssh - X2go

Для справки - X2Go это программное обеспечение с открытым исходным кодом, для удаленного администрирования машин Linux которые используют протокол NX technology. X2Go дает удаленный доступ к графическому интерфейсу Linux. Защищенность соединения предоставляется благодаря использованию ssh. Серверный пакет должен быть установлен на машине с Linux. Клиентские приложения для доступа к серверному хосту могут быть запущены на Linux, FreeBSD, OS X, или Windows. То есть, x2go это форк FreeNX

Ubuntu

Quick

You might have to install add-apt-repository first.

To install add-apt-repository on Ubuntu 10.04 or 12.04:

To install add-apt-repository on Ubuntu 14.04:

Once add-apt-repository is installed, run these commands:

apt-get install x2goserver x2goserver-xsession - установка самих пакетов.

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

Для linux проверено работает c XFCE (ubuntu)

Итак, определились с использованием. Ставить сам сервер очень просто.
Нужно доставить зависимости:

sudo apt-get install software-properties-common python-software-properties

Теперь добавляем репозиторий и устанавливаем из него следующие пакеты:

sudo add-apt-repository ppa:x2go/stable
sudo apt-get update
sudo apt-get install x2goserver x2goserver-xsession

Для использования горячих клавиш, нужно доставить следующий пакет.
Если у вас Mate, нужно поставить следующий пакет:

Если у вас Lxde:

Всё. После того, как установили эти пакеты, сервер установлен и ничего не надо настраивать.

Вам просто нужно узнать ip сервера и можно подключаться удаленно через клиент x2go.

Установка клиента в Windows 8.1 и Ubuntu.

Установка клиента x2go в Ubuntu.

Ничего сложного нет, добавляем тот же репозиторий, через который устанавливали сервер x2go, и ставим из него пакет клиента:

sudo apt-add-repository ppa:x2go/stable
sudo apt-get update
sudo apt-get install x2goclient

В установленных приложениях можно найти x2go клиент и можно подключаться. (Об этом ниже описано подробнее в демонстрации работы).

Установка клиента x2go в Windows 8.1.

Также ничего сложного, есть установочный пакет на офф. сайте.

В секции для Windows скачиваем exe файл:



Устанавливаем программу. Потребуются права администратора. Всё. Можно подключаться.

Кроме того, клиент доступен еще для многих других дистрибутивов Linux и других ОС

Использование как терминального сервера.

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

На компьютере с x2go сервер должна быть установлена легкое окружение рабочего стола, типа XFCE или LXDE, ну или MATE.
Нужно создать пользователей для каждого, кто будет одновременно работать с терминальным сервером.
Узнаем ip сервера и открываем клиент.

Открываем клиент и создаем новое подключение.
Пример создания подключения и соединение с сервером в Windows:


Откроется окно создания "Новой сессии":


  • Имя сессии - какое хотите.
  • Хост - ip сервера, к которому подключаться.
  • Пользователь - имя пользователя.
  • Тип сессии - здесь выбираем оболочку рабочего стола. В примере XFCE.

В принципе всё. Можно подключаться. Но на остальных вкладках можно настроить еще много всего.
К примеру разрешение экрана:


А также можно настроить, нужен ли нам звук:


Это всего можно отредактировать и позднее. Жмём "Ок" и соединение появится в списке:


Теперь щелкаем по нужному соединению из списка (сейчас оно одно) и появится окно с вводом пароля:


Если всё правильно, то запустится удаленная сессия в окне:


Вот таким образом это работает.

Использование для запуска программы на удаленном компьютере.

Этот случай, когда есть ресурсоёмкое приложение, к примеру, какое то IDE и нужно подключаться к нему, чтобы не забивать ресурсы своего маломощного компьютера. Это как пример, возможно какие-то другие есть причины. Но это очень удобно. Делается это следующим образом.

И важное замечание, что здесь окружение рабочего стола вообще не играет роли. Поэтому можно подключаться к компьютеру с Unity или KDE, вообще роли DE не играет.

Всё то же самое, как в предыдущем варианте, создаём новую сессию и вводим

  • Имя сессии - какое хотите.
  • Хост - ip сервера, к которому подключаться.
  • Пользователь - имя пользователя.

Только теперь в пункте Тип сессии нужно выбрать "Приложение" и ввести путь до приложения или команду запуска приложения:


В примере это Firefox, который в итоге и запускается:


Вот таким образом можно запускать приложения с удаленного компьютера без запуска X-сессии.

Использование для удаленного доступа компьютером (как в TiemViewer).

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

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

Либо еще можно установить x2go сервер на компьютерах в офисе, оперативы они едят мало и админ будет подключаться с помощью клиента к рабочим компам, тоже как вариант.

Всё делается тоже самое, создается новое подключение вписываются данные, только в тип соединения выбираем:


Выбираем:
Тип сессии - Соединение с локальным десктопом.

Всё. Подключаемся, будет спрошено:


Выбираем Полный доступ, если хотим управлять удаленным компьютером, откроется запущенный сеанс:

В данной статье описывается работа с LTSP версии 5.18.12-3.1astra3, позволяющей создавать гостевые образы Astra Linux Special Edition и Astra Linux Common Edition на любой из этих ОС (по умолчанию создается гостевой образ соответствующий текущей хост-системе). Эта версия доступна для установки из репозитория пакетов Astra Linux Common Edition.

Linux Terminal Server Project (LTSP) — свободно распространяемый пакет для Linux с открытым исходным кодом, позволяющий пользователям с маломощными компьютерами (терминалами) использовать вычислительные мощности одного более производительного компьютера (сервера). При этом все приложения запускаются на сервере, а терминалы, также называемые тонкими клиентами (или X-терминалами), просто принимают видеоряд, посылаемый сервером, и кроме него ничего не обрабатывают. Как правило, терминал представляет собой маломощный компьютер, в котором даже может отсутствовать жесткий диск, вследствие чего он может работать тише и потреблять меньше энергии, чем обычный настольный компьютер.

Для передачи клиентам первичной информации (сетевой адрес терминала, адрес, к которому должен подключаться терминал) дложна использоваться службы DHCP. Далее рассматриваются два варианта настройки:

  • служба dnsmasq - упрощенная служба, устанавливается вместе с сервером LTSP, включает в свой состав простой TFTP-сервер, и позволяет быстро настроить нужные параметры для работы терминалов;
  • служба isc-dhcp-server - полноценная служба DHCP, обычно применяется в больших сетях.

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

Подключение клиентов осуществляется по протоколу SSH (рекомендованный вариант), или по протоколу xRDP.

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

Настройка сетевых интерфейсов

Типичный сервер LTSP имеет два сетевых интерфейса:

  • Первый интерфейс (eth0) подключен к Интернет, и настройки получает автоматически;
  • Второй интерфейс (eth1) подключен к локальной сети, и ему присвоен статический адрес (для примера 192.168.56.10 с маской 24). Через этот интерфейс осуществляется подключение клиентских машин (также находящихся в локальной сети).

Сетевые интерфейсы настраиваем любым предпочтительным способом, например, с помощью Network Manager.

Включение удаленного доступа

Для работы сервера LTSP нужно разрешить удаленный вход в систему:

Установка пакетов

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

Для установки пакетов на Astra Linux Special Edition необходимы:

  • установочный диск;
  • диск со средствами разработки;
  • образ обновления установочного диска (update-iso);
  • образ обновления диска со средствами разработки (update-dev-iso).

Установка пакетов может быть выполнена с помощью графического менеджера пакетов или из командной строки командой:

При установке пакета ltsp-server-standalone автоматически будет установлен пакеты ltsp-server - набор сценариев для создания сервера терминалов.

Установка пакета xrdp необязательна, и нужна для поддержки работы по протоколу xRDP в дополнение к протоколу SSH.

Настройка служб DHCP

Не нужно настраивать обе службы (dnamsq и isc-dhcp-server), достаточно одной из них. Если в сети уже присутствует служба DNS, то следует использовать уже существующую службу, дополнив её настройки как указано ниже. Если используемая служба DHCP не поддерживает необходимые для терминального сервера настройки (например, встроенная служба DHCP сетевого маршрутизатора), следует рассмотреть возможность замены этой службы.
По возможности не следует использовать упрощенную службу dnsmasq, лучше сразу переходить к настроке и использованию полноценной службы isc-dhcp-server.

Установка и настройка службы dnsmasq

Установить службу dnsmasq:

Создать файл /etc/dnsmasq.d/ltsp-server-dnsmasq.conf конфигурации службы dnsmasq командой :

Отредактировать файл конфигурации /etc/dnsmasq.d/ltsp-server-dnsmasq.conf:

В конфигурационном файле, устанавливаемом по умолчанию, имеются параметры использования proxy:

Для получения работоспособной конфигурации эти параметры следует отключить (или использовать пример конфигурационного файла, приведённый ниже).

Минимальные исправления - указать диапазон адресов, выдаваемых сервером DHCP (в примере ниже изменения отмечены выделением):

Перезапустить сервис dnsmasq командой:

Настройка службы isc-dhcp-server

Подробнее про настройку службы isc-dhcp-server см. статью DHCP;

Создать конфигурационный файл /etc/ltsp/dhcpd.conf, выполнив на сервере терминалов команду:

При этом будет создан конфигурационный файл /etc/ltsp/dhcpd.conf следующего вида:

Указанные в полученном файле сетевые адреса и сетевые маски следует заменить на актуальные.

Если в используемой сети нет службы DHCP, а служба DHCP нужна только для сервера терминалов и не используется более ни для чего, то после внесения актуальных сетевых адресов и масок полученный на предыдущем шаге файл можно использовать как файл конфигурации службы isc-dhcp-server, просто скопировав его в каталог /etc/dhcp/:

sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.bak
sudo cp /etc/ltsp/dhcpd.conf /etc/dhcp/dhcpd.conf
sudo systemctl restart isc-dhcp-server

Если служба DHCP используется для иных целей (в том числе, если используется служба, отличная от isc-dhcp-server), то параметры next-server , option root-path и блок if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" из полученного файла /etc/ltsp/dhcpd.conf должны быть перенесены в конфигурацию используемой службы.

Для создания образа тонкого клиента используется сценарий ltsp-build-client. Особенности применения сценария зависят от создаваемой гостевой ОС (Common Edition или Special Edition):

Astra Linux Common Edition

В Astra Linux Common Edition по умолчанию для сборки образа будет использоваться тот же дистрибутив и/или архитектура что и на серверной системе, и сценарий сборки образа в простейшем случае может быть вызван без параметров:

Если предполагается использовать графическую оболочку, то следует сразу установить пакет fly-all-main:

Возможные необязательные параметры:

--chroot <название папки> - название папки с образом относительно каталога /opt/ltsp/ (по умолчанию - amd64);

--dist <название дистрибутива> - задаёт для сборки дистрибутив, отличный от используемого по умолчанию дистрибутива серверной системы. Поддерживаются два варианта: orel или smolensk;

--early-packages <название пакетов> — установка в клиентский образ дополнительных пакетов.

В опции --early-packages названия дополнительных пакетов должны быть указаны через запятую без пробелов.

Astra Linux Special Edition

В Astra Linux Special Edition для сборки образа нужно настроить репозиторий или примонтировать установочный диск (или образ диска) Astra Linux Special Edition. Например, образ установочного диска в файле smolensk-1.6-20.06.2018_15.56.iso можно примонтировать командой

Для успешной сборки системы необходимы:

  • установочный диск;
  • диск со средствами разработки;
  • образ обновления установочного диска (update-iso);
  • образ обновления диска со средствами разработки (update-dev-iso).

Сборка образа для Astra Linux Special Edition осуществляется командой :

sudo ltsp-build-client --update-bin <путь_к_update-iso> --update-dev <путь_к_update-dev-iso>

При этом, в дополнение к необязательным опциям сценария сборки, применяемым в Astra Linux Common Edition, в Astra Linux Special Edition используются две обязательные опции:

--update-bin - путь к iso-образу репозитория с обновлением smolensk;
--update-dev - путь к iso-образу репозитория с обновлением smolensk-devel.

Если предполагается использовать графическую оболочку, то следует сразу установить пакет fly-all-main (так же, как в Astra Linux Common Edition, использовать опцию --early-packages).

В Astra Linux Special Edition помимо устанавливаемых в Astra Linux Common Edition пакетов будут у становлены пакеты parsec и linux-astra-modules. В процессе работы сценария будут появляться запросы на установку/монтирование необходимых дисков в каталог /media/cdrom.

После завершения работы образ системы будет записан в /opt/ltsp/images. Распакованная система будет расположена в каталоге /opt/ltsp/amd64, или в том подкаталоге каталога /opt/ltsp/, который был указан с помощью необязательной опции --chroot.

Настройка образа тонкого клиента

Опционально в отладочных целях рекомендуется обновить каталоги пакетов и задать пароль для локального администратора в клиентском образе (вместо <adminname> указать имя администратора):

[ -d /parsecfs ] && [ -d /opt/ltsp/amd64/parsecfs ] && sudo mount --bind /parsecfs /opt/ltsp/amd64/parsecfs
sudo ltsp-chroot -m
apt update
useradd -g adm -G sudo -s /bin/bash -m <adminname>
passwd <adminname>
exit
[ -d /parsecfs ] && [ -d /opt/ltsp/amd64/parsecfs ] && sudo umount /opt/ltsp/amd64/parsecfs

В приведённом выше примере первая и последняя команды (монтирование и размонтирование файловой системы /parsecfs) нужны (и сработают) только в Astra Linux Special Edition для образов Astra Linux Special Edition, в Astra Linux Common Edition и для образов Astra Linux Common Edition они не нужны. При этом подразумевается, что распакованная система находится в каталоге /opt/ltsp/amd64/, если это не так, то эти команды монтирования и размонтирования нужно изменить соответствующим образом.

Если ранее не был установлен пакет fly-all-main (или какой-то другой нужный пакет), то его можно доустановить в любой момент:

При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);

Обновить созданный образ:

Перезапустить службы nbd-server, sshd, xrdp:

По умолчанию для клиентов используется файл конфигурации, находящийся в образе терминального клиента (/opt/ltsp/amd64/etc/lts.conf).
Опционально рекомендуется создать отдельный файл конфигурации по умолчанию для LTSP клиентов:

После создания файла конфигурации на сервере терминалов для клиентов будет использоваться файл /var/lib/tftpboot/ltsp/amd64/lts.conf.

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

Для создания образа толстого клиента нужно:

Создать и настроить образ тонкого клиента по описанной выше процедуре или создать сразу образ толстого клиента:

sudo ltsp-build-client --fat-client-desktop fly-wm --late-packages sudo,mc

--fat-client-desktop - название рабочего стола (fly-wm)

--late-packages - название дополнительных пакетов, отсутствующих в стандартном наборе для создания тонкого клиента (в данном примере - пакеты sudo и mc)

В параметре --late-packages названия дополнительных пакетов должны быть указаны через запятую без пробелов.

Дополнительно может быть указан необязательный параметр --chroot с именем каталога для размещения образа.

Если используется образ тонкого клиента, то установить в него основные пакеты Fly:

При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);

• Метапакет fly-all-optional - включает в себя пакеты ark, clementine, compton, fly-admin-iso, fly-fm-crypt, gparted, guvcview, kgpg, librsvg2-bin, qapt-deb-installer, qbat, recoll, speedcrunch, synaptic, vlc, vlc-astra, vlc-l10n, vlc-plugin-access-extra, xca, yelp;

• Метапакет fly-all-games - включает в себя пакеты klines, kmines, kpat, supertux, warzone2100, xonotic;

• Пакет libreoffice - кроссплатформенный, свободно распространяемый офисный пакет с открытым исходным кодом;

• другие необходимые пакеты;

Если был установлен fly-dm, то запретить его автозапуск:

При необходимости для команды ltsp-chroot может быть указан дополнительный параметр -a <имя каталога>, задающий расположение образа (аналогично параметру --chroot команды ltsp-build-client);

В используемом файле конфигурации клиента (/opt/ltsp/amd64/etc/lts.conf или /var/lib/tftpboot/ltsp/amd64/lts.conf) изменить значение параметра LDM_SESSION на default (добавить параметр, если его нет), и добавить параметр LDM_PASSWORD_HASH для корректной работы блокировщика экрана:

Обновить ранее собранный образ клиента:

sudo ltsp-update-kernels <ARCH> && sudo ltsp-update-image <ARCH>

где вместо <ARCH> указать название каталога, в котором находятся файлы для сборки (каталог указывается относительно каталога /opt/ltsp/ и, если не указать ничего - то будет использована архитектура amd64, т.е. будет использован каталог /opt/ltsp/amd64/)

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

Для подключения по протоколу XDMCP:

В ОС Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) заменить в файле /opt/ltsp/amd64/usr/share/ltsp/screen.d/xdmcp строку

В Astra Linux Common Edition выполнение указанных действий не требуется.

Для rdp подключений в файле /opt/ltsp/amd64/usr/share/ltsp/screen.d/xfreerdp последнюю строку привести к виду

Создать файл /opt/ltsp/amd64/usr/local/bin/rdp.sh (указать актуальный IP-адрес):

И сделать созданный файл /opt/ltsp/amd64/usr/local/bin/rdp.sh исполняемым:

chmod +x /opt/ltsp/amd64/usr/local/bin/rdp.sh

sudo ltsp-chroot systemctl disable fly-dm
sudo ltsp-chroot -m update-initramfs -uk all
sudo ltsp-config --overwrite lts.conf

Файл /var/lib/tftpboot/ltsp/amd64/lts.conf привести к следующему виду (исправив IP-адреса на актуальные):

Для того, чтобы по умолчанию подключение выполнялось по XDMCP опцию SCREEN_07=xfreerdp следует изменить на SCREEN_07=xdmcp.

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

RDP клиенты удаленного доступа для Linux

RDP (Remote Desktop Protocol) — протокол доступа к удаленному рабочему столу, созданный Microsoft. Он поддерживается почти любой современной ОС. В этой статье предлагаем взглянуть на несколько популярных клиентов удаленного доступа для Linux.

Проприетарный RDP — не единственный протокол удаленного доступа. Есть, например, открытый протокол VNC или защищенный протокол SSH. Все протоколы поддерживаются большинством операционных систем, включая различные дистрибутивы Linux, а иногда и мобильные ОС.

Для чего нужны RDP клиенты?

Клиенты доступа к удаленному рабочему столу имеют гораздо более широкие возможности, чем просмотр сессии удаленной машины с локальной. Через RDP клиент осуществляется доступ к удаленному рабочему столу с полноценной поддержкой клавиатуры, мыши, а также с поддержкой аудио и возможностью передачи файлов. В некоторых случаях RDP клиент может быть уже установлен в системе, например, на Ubuntu Desktop обычно предустанавливается клиент Remmina.

Популярные Linux RDP клиенты

Remmina


Источник

Remmina идет под лицензией GNU GPL и имеет открытый исходный код.

Установка Remmina

Remmina устанавливается через терминал:

В дистрибутивах Ubuntu, как правило, уже имеется клиент Remmina, однако, версия обычно устаревшая поэтому рекомендуется ее обновить.


Обновление Remmina

В терминале нужно ввести команду:


Затем запросите обновление списка системных хранилищ:


Следующий шаг — установка или обновление плагина протокола RDP:


Чтобы завершить установку Remmina Linux RDP client, закройте активные сеансы приложения из терминала: sudo killall remmina. Затем откройте обновленный клиент заново и перейдите к конфигурации соединения.

Настройка Remmina


Если нужны настройки Remmina Remote Desktop Client, откройте меню Preferences (параметры) нажатием на иконку в правой верхней части окна.

Подключение по RDP к удаленной машине

Давайте рассмотрим как работает подключение по RDP к удаленной машине на примере Remmina.



Поддерживаются соединения с Linux, Windows или macOS. Главное, что вам нужно знать — это IP-адрес машины, с которой устанавливается подключение, имя пользователя и пароль.

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


Также есть возможность управлять соединениями, копируя, редактируя и удаляя их прямо из основного окна.


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

Apache Guacamole


Источник

Еще один интересный RDP клиент для Linux — Apache Guacamole. Этот RDP клиент с открытым исходным кодом, распространяется по лицензии Apache v. 2.0. У Apache Guacamole есть интересная особенность — разработчики называют его «шлюз для удаленного рабочего стола без клиента» (clientless remote desktop gateway). Все благодаря тому, что Apache Guacamole работает напрямую из браузера, необходимости устанавливать дополнительное ПО или плагины нет.

Установка Apache Guacamole

Apache Guacamole может быть предустановлен в некоторых Linux Debian и Debian-based дистрибутивах. Ручная установка Apache Guacamole из терминала производится командой:


Поскольку Apache Guacamole — серверный клиент, требуется установить Tomcat Server на вашу машину, после чего программа установки попросит его перезапустить.

По умолчанию Apache Guacamole устанавливается с поддержкой только протокола VNC. Чтобы иметь возможность подключаться по SSH или RDP, необходимо установить дополнительно клиент для желаемого протокола. Сделать это можно следующей командой:

В более новые версии дистрибутивов Linux клиенты, необходимые для подключения по протоколу RDP, могут быть уже включены.

Настройка Apache Guacamole

После установки Apache Guacamole автоматически применяет минимально необходимые для запуска настройки. Основным файлом конфигурации Apache Guacamole является guacamole.properties.

Все подробности об установке, настройке и управлении Apache Guacamole детально описаны в руководстве на официальном сайте.

Клиент Apache Guacamole максимально прост в использовании. Для запуска шлюза доступа к удаленному рабочему столу без клиента требуется иметь только браузер с поддержкой HTML5. Сама работа показана в коротком видео.

FreeRDP


Источник

Еще один бесплатный RDP клиент для Linux — FreeRDP. FreeRDP имеет лицензию Apache и открытый исходный код. Его можно встретить включенным в некоторые дистрибутивы Linux.

Установка FreeRDP

Актуальную на момент написания статьи версию FreeRDP можно установить командой из терминала:

Настройка FreeRDP

FreeRDP — терминальный клиент, поэтому все настройки для подключения вводятся одной командой:

  • -u username — имя удаленного компьютера, к которому хотите подключиться;
  • -p password — пароль учетной записи;
  • -g 1280×1024 — разрешение экрана;
  • XXX.XXX.XXX.XXX — IP удаленного компьютера.

Полный синтаксис можно найти в интернете.

Чтобы не вводить команду заново каждый раз, вы можете создать ярлык подключения со всеми необходимыми параметрами. Для этого, после установки FreeRDP, откройте окно терминала, запустите редактор nano: sudo nano

/rdp.sh. В появившемся окне введите следующие строки и сохраните файл:

Первая строка — это директория для ярлыка, а вторая строка — команда запуска FreeRDP со всеми требуемыми параметрами. FreeRDP также можно использовать совместно с клиентом Remmina в качестве графического интерфейса.

TigerVNC


Источник

TigerVNC — это полностью бесплатный клиент, он имеет открытый исходный код. Он отличается от предыдущих клиентов удаленного доступа тем, что он работает только по протоколу VNC.

Установка TigerVNC

Для работы TigerVNC требуется окружение рабочего стола. Мы выбрали окружение Gnome, установили его следующими командами:

Затем, чтобы установить компоненты TigerVNC, введите в окне терминала:

Если установка прошла успешно, запустите VNC-сервер: vncserver. Создастся дефолтная конфигурация, а от вас потребуется задать пароль для TigerVNC длиной от 6 до 8 символов.


Настройка TigerVNC

Следующим шагом вы должны будете настроить рабочее окружение для работы с TigerVNC. Чтобы избежать конфликтов, следует приостановить активный VNC-сервер командой в терминале: vncserver -kill :1.

Затем введите команду vi

/.vnc/xstartup, чтобы добавить файл xstartup в каталог конфигурации рабочего стола, откроется редактор.

В редакторе пропишите пять строк:

Эти строки будут выполняться при каждом запуске TigerVNC сервера. Сохраните файл, задайте ему разрешения:

Возобновите работу сервера, введя в терминале:

  • :1 — номер дисплея;
  • -localhost — разрешить соединения только с локального хоста;
  • -geometry — разрешение экрана;
  • -depth — глубина цвета.

TigerVNC — быстрый клиент удаленного доступа к компьютеру, однако, его функционал ограничивается VNC протоколом, и его установка чуть более требовательна, чем у аналогов.

rdesktop


Источник

Следующий клиент — rdesktop — поддерживается на платформах Linux, Microsoft Windows, имеет открытый исходный код. Выгодно отличает rdesktop от других клиентов поддержка протокола RDP 4.0, используемого в версиях Windows NT 4.0 Terminal Server Edition и Windows 2000 Server.

Установка rdesktop

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

Настройка rdesktop

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

Команда использует следующий синтаксис:

  • -z — использовать сжатие потока;
  • -P — использовать кэширование;
  • -g/-f — оконный/полноэкранный режим;
  • -u — имя пользователя удаленной машины;
  • -p — пароль.для входа в учетную запись удаленного компьютера.

Это только некоторые из доступных команд, полный список легко находится в интернете.

Если вы в поиске простого и надежного клиента, который поддерживал бы также функции RDP4, то rdesktop будет оптимальным выбором.

Vinagre


Источник

Vinagre входит в стандартное окружение Gnome и по сути является официальным RDP клиентом Gnome. Это значит, что клиент Vinagre уже должен быть включен в ваш дистрибутив Linux с окружением Gnome, и его установка не потребуется.

Установка Vinagre

Если по какой-то причине клиент Vinagre отсутствует у вас в системе, вы можете его инсталлировать, введя в консоли:


Преимущества Vinagre это:

  • Возможность подключить несколько удаленных рабочих столов одновременно. Каждый из них будет отображаться на отдельных вкладках.
  • Поиск потенциальных подключений в локальной сети. Vinagre позволяет отслеживать доступные подключения.
  • Поддержка VNC и SSH.
  • Добавление подключений в избранное, наличие истории.
  • Поддержка Gnome Keyring.

Если вы работаете с Gnome, то вам стоит обратить внимание на Vinagre, ознакомиться с этим клиентом поближе.

NoMachine NX Client


Источник

Утилита NX Client, разрабатывается компанией NoMachine. Программа работает по проприетарному протоколу NX, который разработан компанией NoMachine. NoMachine NX Client доступен для Windows, Linux, macOS, Android, iOS, Raspberry Pi, а также из браузера.

Установка NoMachine NX Client

Вам потребуется скачать установщик в любом формате (RPM, DEB, TAR.GZ) открыть и установить его на обе машины — локальную и удаленную. То же можно сделать и командой из терминала, но иметь копию пакета установки все равно потребуется.


NoMachine NX Client обладает впечатляющим набором функций, который расширяется с каждым обновлением.


Но, во-первых, для корпоративных клиентов NoMachine продает свои продукты по подписке (44,50 долларов в год за сервер или пакет 10 пользователей, подробнее). Это совсем не выгодно отличает NX Client от рассмотренных ранее полностью бесплатных клиентов. Во-вторых, большое число функций и вкладок с различными настройками и параметрами может помешать сосредоточиться на работе. Кроме того, NoMachine NX Client не поддерживает открытие нескольких сеансов во вкладках — каждый новый сеанс нужно открыть в новом окно программы. Зато вся документация и справка на официальном сайте NoMachine переведена на русский.

NoMachine NX Client — хороший выбор, если ваши основные требования это:

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


    Источник

    Krdc — бесплатный RDP клиент с открытым исходным кодом, идущий под лицензией GPL v.3. Krdc может работать по VNC и по RDP, клиент является официальным проектом окружения KDE для удаленного доступа.

    Установка Krdc

    Установить Krdc на дистрибутив Linux можно, введя в терминале:


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


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

    TeamViewer


    Источник

    TeamViewer — широко известный клиент для удаленного доступа, он является бесплатным только для частного использования. Стоимость корпоративного решения от 2 до 7 тысяч рублей в месяц за одно рабочее место, подробности можно узнать на сайте TeamViewer.

    Одно из преимуществ TeamViewer — кроссплатформенность. После установки приложение позволяет подключаться к удаленному рабочему столу с Linux, Windows, macOS, Android, iOS, Blackberry и даже ChromeOS.

    Установка TeamViewer

    Для установки TeamViewer разработчики рекомендуют скачать пакет установки с официального сайта, после чего установить его через графический интерфейс на обе машины — локальную и удаленную. Установить TeamViewer через терминал можно соответствующими командами для соответствующего пакета, например DEB:


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

    Заключение

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

    • Скрипт запускается на Ubuntu 18.04.1 x64 desktop
    • После установки, система обновлена командой sudo apt update && sudo apt dist-upgrade
    • Система развернута на хосте ESXi
    • Системе выделено 16 ядер цпу, 64GB оперативной памяти, 128 Gb HDD
    • Имя сервера: ag-ts
    • Все манипуляции после установки openssh сервера производятся через SSH

    Устанавливаем систему

    Задаем имя сервера

    Устанавливаем статический IP адрес

    Устанавливаем OpenSSH сервер

    Этот пункт необязателен и нужен только если вы будете работать с сервером удаленно.
    Открываем терминал и вводим команду sudo apt install openssh-server

    Установка openssh-server

    sudo apt install openssh-server

    Скачиваем скрипт для установки xRDP

    Переходим в свою домашнюю директорию командой cd

    скачиваем архив со скриптом

    извлекаем скрипт из архива

    Делаем скрипт исполняемым

    Варианты установки xRDP

    Эта команда установит xrdp, добавит фикс и возможность перенаправления звука

    Устанавливаем xRDP


    /Downloads:
    Если у вас не английская версия Ubuntu 18, то при установке RDP Server из скрипта, у вас возникнет ошибка показанная на скриншоте выше. В скрипте жестко прописан путь к папке

    /Downloads, при этом в её отсутствии скрипт загружает необходимые файлы прямо в корень.Чтобы не лезть в сам скрипт, просто создадим папку Downloads в домашнем каталоге пользователя, от которого запускаем скрипт

    Быстрый просмотр скрипта, выявит что в строке 359, находится команда установки xrdp-pulseaudio-installer, но почему-то она не отрабатывает.
    Запускаем установку xrdp-pulseaudio-installer вручную

    1. Создаем тестового пользователя
      Логин у нас будет adminguide, пароль 123

    Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 4

    Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 6

    Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 7

    Ubuntu 18.04 - RDP Server за 5 минут - Подключение по RDP - Шаг 8

    1. Будучи подключенными к серверу терминалов, надо зайти в настройку звуковой карты. Там должно быть устройство xrdp sink
    2. Если он есть, значит звук с вашего удаленного сеанса на локальную машину должен передаваться. Можно открыть например ютуб чтобы потестить
    Belfigor
    WinSCP работаем с файлами Linux сервера через SFTP

    You may also like

    Резервный DHCP сервер Linux AD-DC Ubuntu 18.04

    Запуск дополнительного Linux AD-DC

    Репликация SysVol Linux AD-DC. Запуск и проверка.

    Linux AD-DC Двусторонняя репликация SysVol

    Проверка DNS записей резервного Linux AD-DC

    Настройка безопасности SSH соединения

    70 комментариев

    Почему-то бирюзовый экран без каких-либо значков при входе по rdp

    По окончании работы скрипта установки были ли какие-либо ошибки из неописанных в посте?

    Хороший скрипт, ловко превращает убунту в кирпич =))))

    Применяли скрипт на чистой установке?

    Установил xRDP с помощью вашего скрипта на xUbuntu 18.04. Скрипт отработал без ошибок. Подключения по rdp работают, но окно локального входа в систему перестало реагировать на любые действия. В чем может быть причина?

    Увы, это ограничение xRDP. Один и тот же аккаунт не может быть использован для удаленного и локального входа одновременно. Если пользователь user1 авторизован локально, то этот же пользователь user1 не сможет авторизоваться по rdp до тех пор пока локальный пользователь user1 не завершит свою сессию. То же работает в обратную сторону. user1 не сможет авторизоваться локально до тех пор пока удаленная сессия user1 не будет завершена. xRDP не прерывает в случае повторного логина сессию пользователя как это делает Windows.

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

    После перезагрузки не пускает локально абсолютно под любым пользователем?
    Что пишет syslog при попытке авторизоваться?
    Если после перезагрузки зайти удаленно под user_name_2 и вбить команду ps -u user_name_1 | grep xrdp , при том что user_name_1 не пытался авторизовываться в системе после перезагрузки, что оно покажет?

    Проблема не в том, что локально не пускает, а в том, что экран входа не реагирует ни на щелчки мыши, ни на клавиатуру. В логе, соответственно, нет попыток входа. Команда ps -u user_name_1 | grep xrdp не показывает ничего.

    Инсталяция на физический или виртуальный сервер? При переустановке результат сохраняется?

    Виртуальная машина на VMWare. При переустановке результат сохраняется.
    Еще несколько раз при перезагрузки появлялась ошибка: light-locker crashed with signal 5

    VMWare Workstation или ESXi? Какой процессор в основе гипервизора? AMD или Intel?

    Была такая ерунда с LXDE, сменил на ubuntu-gnome-desktop всё норм стало.

    Я прям даже затрудняюсь ответить, я с таким не сталкивался никогда ни на одной инсталяции. Как вариант я могу попробовать запустить клон вашей инсталяции у себя, если скинете мне ссылку и посмотреть что там и не исчезнет ли проблема у меня. И если исчезнет тогда мы определим что она на физическом уровне.

    В общем, проблем решил кардинально, использовал Ubuntu Server вместо xUbuntu. Спасибо за помощь!

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

    Готовых решений нету, встречал поиск решения на различных форумах. Как правило все сводилось к тому что нужно самостоятельно писать свой скрипт. Собственно я стараюсь не допускать самой необходимости пользователю что-то настраивать. Есть меню с программами, там есть ярлычок 1С и ярлычки с либраофисом + браузер. Бухгалтерам этого хватает за глаза. Так что с этим вопросом не помогу 🙁

    Добрый день! Воспользовался данной инструкцией для установки удаленного доступа на свой домашний сервер. Установка прошла успешно без ошибок, но когда пытаешься залогинится на рабочий стол. Выкидывает. Переустановка не помогает.

    Установка производилась на уже функционирующий сервер или домашний сервер разворачивался из чистой установки Ubuntu 18.04?

    Честно сказать вообще не знаю. Я ни разу не настраивал линуксовые компьютеры через что-то кроме SSH. У меня на них сидят бухгалтера, а админы коннектятся к серверам по SSH. Так что каких-то особенных настроек ни с терминалами ни с обычными линуксовыми машинами я не произвожу. , а все межсетевые взаимодействия настраиваются на уровне всяких программных и аппаратных шлюзов.

    На странице Griffon’s IT Library ссылка на которую есть почти в самом начале, подобное обсуждалось и рекомендовалось переустановить пакеты:
    sudo apt-get -y install xserver-xorg-input-all
    В моём случае это помогло.

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

    Система была использована чистая Ubuntu 18.04 или ставилось на уже работавшую ранее систему?

    Только что устанавливал все как в инструкции и столкнулся с такой же проблемой. На локальной машине графический интерфейс а точнее мыш и клава, полностью не работают.

    Выполнение вот этой команды полностью решило проблему:

    sudo apt-get -y install xserver-xorg-input-all

    Есть ли возможность работать с таким терминальным сервером из widows xp?

    В теории да, но я не тестировал.

    Добрый! Ошибка по паке Downloads выходит. Но при попытке выполнить команду mkdir

    А можно сам код ошибки посмотреть? 🙂

    Не могу понять. ответ уходит?

    ./Install-xrdp-2.2.sh: строка 81: git: команда не найдена

    ./Install-xrdp-2.2.sh: строка 87: git: команда не найдена

    А если перейти в папку Downloads и там создать папку xrdp?

    спс! сработало. сейчас с другими ошибками попробую поборотся )

    Поставил скрипт, отвалились 2 дисплея и все жопа

    Какие-нибудь логи или ошибки выводит?

    Не успел прочесть комменты. Теперь у меня тоже кирпич! почитал коменты исправил но нервов потрепал знатно

    В каком именно моменте был кирпич и какой комментарий помог его починить? Я добавлю этот пункт в статью.

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

    sudo apt-get -y install xserver-xorg-input-all

    Всё сделал по инструкции. Проблема с зависанием мышки и действий с клавиатуры присутствует.
    Подскажите, как ввести эту команду, если нет возможности зайти с компа, а по RDP не хватает прав?

    $ sudo apt-get -y install xserver-xorg-input-all
    [sudo] пароль для testmon:
    testmon отсутствует в файле sudoers. Данное действие будет занесено в журнал.
    testmon@mon-MS:

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

    Хороший мануал, простой, понятный, без излишеств.
    Сегодня устанавливал связку Ubuntu SERVER 18.04 LTS + LXDE + xRDP на VMWare ESXi 5.5.
    Отличия от мануала:
    Предварительно при установке самого 18.04 server на вопрос об установке OpenSSH сервера отвечаем утвердительно (кончено, можно установить и позже, но зачем нам лишний геморрой?).
    Дальнейшая настройка производилась по SSH.
    Совершенно внезапно в убунту-сервере отсутствует unzip. Лечится
    sudo apt-get install unzip
    Далее устанавливаем DE по вкусу. Лично я ставлю LXDE (нравится она мне, да и на винду похожа, меньше вопросов у пользователей, особенно тех кто ещё помнит XP-шку).
    sudo apt-get install lxde-core
    Обращаю внимание что эта команда установит именно ЯДРО LXDE безо всяких дополнительных программ. В смысле даже firefox нужно будет устанавливать ручками. Если вам такого не надо то используйте apt-get install lxde (впрочем, с таким же успехом можно поставить MATE, Gnome, Untiy или что угодно ещё).
    Дальше действуем по приведённой уважаемым автором инструкции:
    mkdir

    Еще раз спасибо за отличный мануал, лично мне он сэкономил кучу времени и нервов. Надеюсь мой небольшой вклад поможет как автору так и читателям.
    Лично с автором с удовольствием пообщался бы на тему установки 1C под получившуюся систему, есть несколько вопросов, но это не для папблика по ряду причин.

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

    Реально Thinclien_drives появились, но как принтеры подключить?

    Не могу начать установку скрипта, выдает ошибку что не существует папки Downloads
    Версия Ubuntu английская, папка там есть.
    Система Esxi

    Можно скриншот ошибки?

    Всё хорошо что хорошо кончается. Спасибо что поделились опытом решения проблемы!

    BELFIGOR в Вашем профиле увидел что вы работали с Zabbix, можно как то с Вами связаться? есть много вопросов по нему, хотелось бы разобраться, за плату естественно!

    выполнил чистую установку ubuntu server 18.04, всё сделал по инструкции.
    В итоге при подключении через протокол XSORG получаю берюзовый экран, через XVNC получаю ошибку в левом верхнем углу.

    sudo apt-get -y install xserver-xorg-input-all
    Данная команда к какому результату приводит?

    При вводе логина пароля появляется чёрный фон и сразу выкидывает, всё делал по инструкции. Ставилось на чистую систему пробовал сервер и десктоп система стоит на virtualbox проц amd. В чём может быть проблема?

    Нужно попробовать эту команду: sudo apt-get -y install xserver-xorg-input-all

    (polkit-gnome-authentication-agent-1:4559): polkit-gnome-1-WARNING **: 12:17:06.949: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files

    Блин, таки магия какая-то. Всегда обычно выдает запрос пароля от рута и даёт работать дальше. Что написано м syslog?

    Читайте также: