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



Введение


На всякий случай возможно стоит упомянуть, что SSH — основной способ предоставления доступа к линуксовым виртуалкам на RUVDS. Большая часть действий описываемых в этой статье будет осуществляться именно таким образом.

Для подключения необходимо найти SSH-клиент для вашей операционной системы.

Windows:

  1. PuTTY: Telnet/SSH-Клиент
  2. OpenSSH для Cygwin
  3. OpenSSH для MinGW
  4. WinSCP

Linux:

  1. OpenSSH; если Вы пользуетесь Linux, например Ubuntu, скорее всего всё уже установлено, до нас, так что можно смело писать в терминале: ssh root@[IP].
  2. PuTTY есть и для Linux, в том числе в официальных репозиториях Debian и Ubuntu.

MAC OS:

  1. OpenSSH; это бесплатно!
  2. ZOC (80$!)
  3. vSSH

Плагины для браузеров:

  1. FireSSH для Firefox
  2. Secure Shell для Google Chrome

Установка GUI


Итак, перейдем к установке GUI. Сначала нужно поставить графическую подсистему:
Для Debian/Ubuntu:

$ apt-get update
$ apt-get install --no-install-recommends xserver-xorg xserver-xorg-core xfonts-base xinit libgl1-mesa-dri x11-xserver-utils

Для CentOS:

$ yum groupinstall "X Window System" "Fonts"

Далее следует установка Desktop Environment (DE). Их существует великое множество. Мы рекомендуем ставить на сервер более легковесные среды, а еще лучше, не ставить вовсе. Первые две DE достаточно компактные, функциональные и «привычные».

1. Xfce
Для Debian/Ubuntu:

$ apt-get update

Полная установка:

$ apt-get install task-xfce-desktop

Стандартная:

$ apt-get install xfce4 xfce4-terminal

Можно поставить дополнительно:

$ apt-get install xfce4-goodies

Для CentOS:

$ yum install epel-release
$ yum groupinstall "Xfce"
$ echo "PREFERRED=startxfce4" >> /etc/sysconfig/desktop

2. LXDE
Для Debian/Ubuntu:

$ apt-get update

Полная:

$ apt-get install lxde

Минимальная:

$ apt-get install lxde-core

Для CentOS:

Нет в официальных репозиториях

Добавление русской раскладки:

$ setxkbmap -option grp:switch,grp:ctrl_shirt_toggle us,ru


Сочетание клавиш можно менять на свое усмотрение, например:

$ setxkbmap -option grp:switch,grp:alt_shift_toggle us,ru

Чтобы эта команда запускалась каждый раз при запуске LXDE, нужно добавить в конец файла с помощью вашего любимого vi строку: @setxkbmap -option grp:switch,grp:ctrl_shift_toggle,grp_led:scroll us,ru. Или вот так…

$ echo "@setxkbmap -option grp:switch,grp:alt_shift_toggle,grp_led:scroll us,ru" >> /etc/xdg/lxsession/LXDE/autostart

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

3. FluxBox
Для Debian/Ubuntu:

$ apt-get update
$ apt-get install fluxbox xterm

Для CentOS:

$ yum install fluxbox xterm
$ echo "PREFERRED=startfluxbox" >> /etc/sysconfig/desktop


4. Openbox
Для Debian/Ubuntu:

$ apt-get update
$ apt-get install openbox xterm

Для CentOS:

$ yum install epel-release
$ yum install openbox xterm
$ echo "PREFERRED=openbox-session" >> /etc/sysconfig/desktop

Далее следуют наиболее популярные на десктопах графические оболочки.

5. Gnome
Для Ubuntu/Debian:

$ apt-get update

Минимальная установка:

$ apt-get install --no-install-recommends lightdm gnome-panel gnome-terminal

Полная установка:

$ apt-get install gnome gnome-shell

Замечание: с настройкой VNC-сервера под Gnome что-то пошло не так… Сервера из репозиториев tightvncserver и vnc4server так и не согласились сотрудничать, поэтому пришлось собрать пару deb-пакетов руками. Если у Вас не получится настроить сервер, то мы можем порекомендовать скачать собранный нами архив с tigervnc-server’ом и поставить его. Для этого:

$ curl -LOk https://ruvds.com/downloads/tightvnc-packages.tar

Или

$ wget https://ruvds.com/downloads/tightvnc-packages.tar
$ tar -xvf tightvnc-packages.tar
$ cd ./tightvnc-packages
$ dpkg -i *.deb || (apt -f install -y ; dpkg -i *.deb)

Для CentOS:

$ yum groupinstall "GNOME"
$ echo "PREFERRED=gnome-session" >> /etc/sysconfig/desktop

6. KDE
Для Debian:

$ apt-get update

Полная:

$ apt-get install kde-full

Стандартная:

$ apt-get install kde-standart

Минимальная установка:

$ apt-get install kde-plasma-desktop

Для CentOS:

$ yum groupinstall "KDE"
$ echo "PREFERRED=startkde" >> /etc/sysconfig/desktop

7. Cinnamon
Для Debian/Ubuntu:

$ apt-get update
$ apt-get install --no-install-recommends cinnamon-core lightdm

Для CentOS:

$ yum install cinnamon

8. MATE
Для Debian/Ubuntu:

$ apt-get update

Полная:

$ apt-get install mate-desktop-environment-extras

Стандартная:

$ apt-get install mate-desktop-environment

Минимальная:

$ apt-get install mate-desktop-environment-core

Для CentOS:

$ yum groupinstall "MATE Desktop"

Если Вы хотите получать доступ к GUI через «Аварийный режим», то необходимо сделать следующее:

$ systemctl set-default graphical.target

Мало того, необходимо обеспечить запуск графической оболочки при старте системы. Для этого можно установить какой-нибудь экранный менеджер (Display Manager, DM), например:

$ apt-get install lightdm

Или в случае с CentOS:

$ yum install lightdm

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

$ systemctl set-default multi-user.target

Заметка: Ubuntu предлагает своим пользователям несколько метапакетов для более удобной установки нужной DE:

Unitu:

$ apt-get install ubuntu-desktop

LXDE:

$ apt-get install lubuntu-desktop

XFCE:

$ apt-get install xubuntu-desktop

KDE:

$ apt-get install kubuntu-desktop

Далее, есть много способов получить удаленный доступ к GUI.

Удаленный доступ


RDP


На виртуальном сервере, в зависимости от OS нужно произвести следующие действия.

Debian:

$ apt-get install xrdp
$ systemctl enable xrdp
$ systemctl start xrdp

CentOS:

$ yum install epel-release
$ yum install xrdp tigervnc-server tigervnc-server-module
$ chcon -t bin_t /usr/sbin/xrdp
$ chcon -t bin_t /usr/sbin/xrdp-sesman
$ firewall-cmd --zone=public --add-port=3389/tcp --permanent
$ firewall-cmd --zone=public --add-port=3389/udp --permanent
$ firewall-cmd --reload
$ systemctl enable xrdp
$ systemctl start xrdp

XDMCP:

$ vi /etc/gdm/custom.conf

[security]
AllowRemoteRoot=true
DisallowTCP=false
 
[xdmcp]
Enable=true
MaxSessions=30

Далее, если вы используете Windows, подключаемся через встроенный RDP-клиент, Remote Desktop Connection (Подключение к удаленному рабочему столу).



Стандартный порт 3389. Для Linux есть масса клиентов которые можно установить из репозиториев: freerdp и remmina, gnome-rdp, vinagre и т.п.

Для Mac OS:

Также можно пробросить RDP-шный трафик через SSH-туннель. Для этого нужно поправить конфигурационный файл xrdp:

$ vi /etc/xrdp/xrdp.ini

В секцию [globals] нужно добавить строку: address=127.0.0.1

$ systemctl restart xrdp

Проверить, что всё правильно, можно так:

$ nmap -p 3389 [IP]

Starting Nmap 6.47 ( http://nmap.org ) at 2016-10-04 13:07 MSK
Nmap scan report for unspecified.mtw.ru ([IP])
Host is up (0.0087s latency).
PORT     STATE  SERVICE
3389/tcp closed ms-wbt-server

Затем если вы используете cygwin или mingw, linux или mac os:

ssh root@[IP] -L 3389:localhost:3389

Если PuTTY:

Запустите PuTTY. В древовидном меню слева Connection > SSH > Tunnels. Далее добавляем новый Forwarded Port (Source port: 3389, Destination: localhost:3389). Нажимаем Add.



Далее следуете в секцию Session. Вводите IP вашего сервера в поле Host Name (or IP address). Нажимаете кнопку Open, вводите пароль для подключения по SSH.



Далее для Windows:



VNC


Клиент:

Для Windows:

  1. www.realvnc.com
  2. www.tightvnc.com
  3. www.uvnc.com/downloads/ultravnc.html

Для Linux:

  1. Можно использовать вышеупомянутый клиент: remmina
  2. Если в браузере хотите: novnc — HTML5 VNC client
  3. И ещё куча всяких разных: directvnc, gnome-rdp, krdc, xtightvncviewer, vinagre, xvnc4viewer

Для MAC OS:

OS X предоставляет для этого встроенное приложение Screen Sharing. Можно также использовать Safari

vnc://yourserverip:5901

Сервер: На Вашей виртуальной машине установите VNC сервер:

$ apt-get install tightvncserver

Или

$ apt-get install vnc4server
$ yum install tigervnc-server

Если на Вашей системе работает файрвол необходимо открыть соответствующие порты. Пример для CentOS

$ firewall-cmd --zone=public --add-port=5901/tcp --permanent
$ firewall-cmd --zone=public --add-port=5901/udp --permanent
$ firewall-cmd --reload

Далее выполните:

$ vncpasswd
Password:
Verify:

При возникновении проблем с отображением иконок и шрифтов при использовании xfce4 по Ubuntu/Debian:

$ echo "export XKL_XMODMAP_DISABLE=1" >> ~/.vnc/xstartup

Если вы хотите, чтобы VNC-сервер стартовал автоматически, создайте файл:

$ vi /lib/systemd/system/vncsrv.service

Со следующим содержимым:

[Service]
Environment=RESOLUTION=800x600
Environment=COLOR=16
Environment=DISPLAY=1

[Unit]
Description=VNC Server

[Service]
Type=forking
ExecStart=/usr/bin/vncserver -depth ${DEPTH} -geometry ${RESOLUTION} :${DISPLAY}
ExecStop=/usr/bin/vncserver -kill :${DISPLAY}
ExecReload=/usr/bin/vncserver -kill :${DISPLAY} && /usr/bin/vncserver -depth ${DEPTH} -geometry ${RESOLUTION} :${DISPLAY}
User=root

[Install]
WantedBy=multi-user.target

Делее выполните:

systemctl daemon-reload
systemctl enable vncsrv.service
systemctl start vncsrv.service

Теперь можно подключиться, например, через UltraVNC. Для этого нужно запустить UltraVNC Viewer, в поле VNC Server записать [IP]::5901 (по-умолчанию: 5901, 5902 и т.п. для первого дисплея, второго и т.д. соответственно) и нажать на кнопку подключиться.

Также можно пустить vnc-шный трафик через ssh-туннель. Для этого отредактируйте:

$ vi /lib/systemd/system/vncsrv.service

[Service]
Environment=RESOLUTION=800x600
Environment=COLOR=16
Environment=DISPLAY=1

[Unit]
Description=VNC Server

[Service]
Type=forking
ExecStart=/usr/bin/vncserver -depth ${DEPTH} -geometry ${RESOLUTION} :${DISPLAY} -localhost
ExecStop=/usr/bin/vncserver -kill :${DISPLAY}
ExecReload=/usr/bin/vncserver -kill :${DISPLAY} && /usr/bin/vncserver -depth ${DEPTH} -geometry ${RESOLUTION} :${DISPLAY} -localhost
User=root

[Install]
WantedBy=multi-user.target

Затем если вы используете cygwin или mingw, linux или mac os:

ssh root@[IP] -L 5901:localhost:5901

Если PuTTY:
Запустите PuTTY. В древовидном меню слева Connection > SSH > Tunnels. Далее добавляем новый Forwarded Port (Source port: 5901, Destination: localhost:5901). Нажимаем Add.



Далее следуете в секцию Session. Вводите IP вашего сервера в поле Host Name (or IP address). Нажимаете кнопку Open, вводите пароль для подключения по SSH.



Затем открываете UltraVNC Viewer и в поле VNC Server вводите: localhost::5901 после чего подключаетесь.



Также можете попробовать другие VNC-сервера:

x11vnc — фактически VNC-сервер (как vnc4server или tightvnc), но позволяет получать доступ к уже существующей X-сессии. Т.е. если Вы настроили графическую оболочку таким образом, что она запускается при старте системы, то можно использовать следующий вариант:

$ apt-get install x11vnc
$ x11vnc -storepasswd
$ x11vnc -usepw
$ x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :0 -auth /var/run/lightdm/root/:0 -usepw &
$ disown -h %1

После подключения по VNC (на порт 5900) Вы должны увидеть тоже что и в «Аварийном режиме».

Для старта x11vnc при запуске OS необходимо проделать следующее:

$ vi /lib/systemd/system/xvncsrv.service

Добавляем:

[Unit]
Description=X11VNC

[Service]
Type=forking
ExecStart=/usr/bin/x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :2 -usepw
User=root

[Install]
WantedBy=graphical.target

Далее:

systemctl daemon-reload
systemctl enable xvncsrv.service
systemctl start xvncsrv.service

NX


Теперь немного поинтереснее. Одна замечательная компания NoMachine разработала отличный протокол NX на замену VNC. Клиенты для подключения по этому протоколу бесплатны, а официальное серверное ПО от NoMachine  стоит много денег. В свое время, эта же компания поддерживала проект FreeNX работы на котором со временем затихли; текущая версия 0.7.2 от 2008-08-22. Но, к счастью, нашлись люди создавшие форк и назвавшие его x2go. К сожалению, x2go не совместим ни с NX от NoMachine, ни с freeNX. Так что клиент берем тут.

Установка сервера на Debian (источник):

Для примера поставим эту DE:

$ apt-get install fluxbox

Далее следуем инструкциям с оффициального сайта:

$ apt-key adv --recv-keys --keyserver keys.gnupg.net E1F958385BFE2B6E
$ echo "deb http://packages.x2go.org/debian jessie main" > /etc/apt/sources.list.d/x2go.list
$ echo "deb-src http://packages.x2go.org/debian jessie main" >> /etc/apt/sources.list.d/x2go.list
$ apt-get update
$ apt-get install x2go-keyring && apt-get update
$ apt-get install x2goserver x2goserver-xsession

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

$ systemctl status x2goserver
? x2goserver.service - LSB: Start and stop the X2Go daemon
   Loaded: loaded (/etc/init.d/x2goserver)
   Active: active (running) since Tue 2016-10-11 22:05:51 MSK; 30min ago
...

А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n» и заменить её на «tty -s && mesg n».

$ vi .profile

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

$ whereis startfluxbox

Установка сервера на Ubuntu:

$ apt-get install xfce4 xfce4-terminal
$ add-apt-repository ppa:x2go/stable
$ apt-get update
$ apt-get install x2goserver x2goserver-xsession

А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n || true» и заменить её на «tty -s && mesg n».

$ vi .profile

Установка сервера на CentOS:

$ yum install epel-release
$ yum install x2goserver x2goserver-xsession

Клиент для линукс ставится из вышеприведенных репозиториев следующей командой:

$ apt-get install x2goclient

Для Windows — скачиваем, ставим, запускаем. По той же ссылке, приведенной выше, есть клиент для OS X.

Запускаем клиент:



В настройках сессии указываем: в поле Host — IP вашего сервера, в поле Login — root, порт оставляем как есть, session type — тот GUI который ставили.



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

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



Замечание: обратите внимание, что в списке нет Вашего любимого FluxBox’а поэтому путь к нему приходится прописывать руками.

Важной возможностью x2go является возможность запуска любого графического приложения вообще без установки DE. Для этого в настройках сессии нужно в секции session type нужно выбрать пункт single application и выбрать выполняемое приложение или ввести путь к программе которую следует запустить.

В этом случае установка ПО на сервер будет выглядеть следующим образом. В случае с Ubuntu:

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

А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n || true» и заменить её на «tty -s && mesg n».

$ vi .profile
$ apt-get install firefox xterm

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



Или так; тогда просто откроется окно терминала:



Ниже вы можете видеть скриншот окна статуса текущей сессии. Оранжевыми цифрами отмечены кнопки:

  1. «Suspend session» — после нажатия на эту кнопку соединение будет разорвано, но сессия останется и будет ожидать повторного подключения. Все запущенные вами на сервере приложения продолжат свою работу;
  2. «Terminate session» — после нажатия подключение к серверу будет разорвано, а запущенные вами на сервере приложения будут завершены.



TeamViewer


Последний способ удаленного доступа к рабочему столу.

Установка на Ubuntu:

$ apt-get update
$ apt-get install lubuntu-desktop
$ reboot
$ dpkg --add-architecture i386
$ apt-get update
$ wget http://download.teamviewer.com/download/teamviewer_i386.deb
$ dpkg -i teamviewer_i386.deb
$ apt-get -f install
$ teamviewer --passwd [PASSWD]

Установка на Debian:

$ apt-get update
$ apt-get install lxde lightdm
$ reboot
$ dpkg --add-architecture i386
$ apt-get update
$ wget http://download.teamviewer.com/download/teamviewer_i386.deb
$ dpkg -i teamviewer_i386.deb
$ apt-get -f install
$ teamviewer --passwd [PASSWD]

Установка на CentOS:

$ yum groupinstall "X Window system"
$ yum install epel-release
$ yum install fluxbox xterm lightdm
$ systemctl set-default graphical.target
$ reboot
$ curl -o TeamViewer_Linux_PubKey.asc -Lk http://www.teamviewer.com/link/?url=354858
$ rpm --import TeamViewer_Linux_PubKey.asc
$ curl -LOk http://download.teamviewer.com/download/teamviewer.i686.rpm
$ yum install teamviewer.i686.rpm
$ teamviewer --passwd [PASSWD]

Также необходимо принять лицензионное соглашение TeamViewer’а, это можно сделать с помощью «Аварийного режима», либо добавить следующие строки в конец файла /opt/teamviewer/config/global.conf:

$ echo "[int32] EulaAccepted = 1" >> /opt/teamviewer/config/global.conf
$ echo "[int32] EulaAcceptedRevision = 6" >> /opt/teamviewer/config/global.conf
$ teamviewer --daemon restart

Следующая команда покажет состояние демона TeamViewer’а и необходимый для подключения девятизначный TeamViewer ID:

$ teamviewer --info


После запуска клиента скачанного тут, нужно ввести TeamViewer ID в поле Partner UD и нажать на кнопку «Connect to partner». Далее TeamViewer запросит пароль: [PASSWD].



Вместо заключения


Вот вроде бы и всё. Надеемся что эта статья поможет пользователям linux-серверов в настройке комфортного и удобного для них окружения.
Поделиться с друзьями
-->

Комментарии (34)


  1. Spheniscus
    13.10.2016 14:46

    Как решается вопрос с периодичным отваливанием смены раскладки при использовании x2go на клиенте и сервере? А так же с корректной работой цифрового блока клавиатуры?


    1. Maxlinus
      13.10.2016 17:28

      http://unixforum.org/index.php?showtopic=108708&st=120&p=1263239&#entry1263239


  1. Saffron
    13.10.2016 15:21
    +1

    > Вот вроде бы и всё.

    А Spice вы пробовали? Сам себя он хвалит, но это для всех проектов верно. Интересно, как он на самом деле показывает себя.


    1. ru_vds
      13.10.2016 15:34

      Спасибо за комментарий. Не пробовали, посмотрим.


  1. KlimovDm
    13.10.2016 15:26
    +2

    >>> так что можно смело писать в терминале: ssh root@[IP]

    Действительно — смело :) (для целевой аудитории этой статьи)


  1. handicraftsman
    13.10.2016 15:27
    +3

    Правильный конфиг SSH позволяет просто пробрасывать необходимые окна клиенту, не весь десктоп. Для этого и серверу, и клиенту нужен X-сервер.


  1. varnav
    13.10.2016 15:43
    +1

    Ещё есть SPICE


  1. Lorys
    13.10.2016 16:06
    +6

    Не понимаю смысла использовать на сервере GUI.
    Кто-нибудь может объяснить адекватные примеры использования? Для чего это может понадобиться?


    1. shep
      13.10.2016 17:10

      Установка Oracle Database через GUI гораздо комфортнее.

      Только я не понимаю почему в статье нет про передачу X-сессий в тот же Xming — самого нативного, что только можно придумать.


    1. DistortNeo
      13.10.2016 23:31

      Для серверов — не могу сказать, Xming обычно хватает. А вот для клиентских машин полноценный RDP будет очень не лишним.


    1. Saffron
      13.10.2016 23:54

      1. Автоматизация на базе selenium. Когда htmlunit не канает, а нужен полновесный браузер.
      2. Переносимый рабочий стол. Ты собираешь свои офисные задачи на удалённой машине и можешь подключиться к этой сессии отовсюду, не теряя контекста работы. Задача настолько популярная, что куча вебкостылей была создана специально для этого случая.


    1. ls1
      17.10.2016 15:03

      Не понимаю смысла использовать на сервере GUI.
      Кто-нибудь может объяснить адекватные примеры использования? Для чего это может понадобиться?

      Вот например


  1. Ethril
    13.10.2016 16:19

    Можно ли как-нибудь запустить Firefox в Ubuntu 16.04 x64 в RDP-сессии? При настройках «по дефолту» не запускается.


    1. ru_vds
      13.10.2016 16:32

      Можно. В статье все описано.


  1. alexdf
    13.10.2016 17:00

    Советую обратить внимание на следующий продукт (open source) http://gravitational.com/teleport/ который заметно упрощает access management через ssh.

    Ну или https://www.teleconsole.com/

    Доступ через терминал или web ui.


    1. ru_vds
      13.10.2016 17:06

      Спасибо, посмотрим.


  1. Jaromir
    13.10.2016 17:04

    Подскажите, не сталкивались случайно с линуксовым VNC клиентом, который умеет отправлять русский язык? У меня ни vinagre ни remmina не справляются. Только uvnc под вайном при включении опции «японская раскладка»


    1. Halt
      13.10.2016 17:16
      +1

      KRDC вполне себе работает при подключении к винде по RDP и к линуксу по VNC. Регулярно использую для доступа из дома на рабочий комп.

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

      А так и русский и английский работает.

      P.S.: В качестве сервера на лине использую x11vnc.


    1. Maxlinus
      13.10.2016 17:33

      попробуйте эту версию ssvnc https://yadi.sk/d/1Uszk7onvYoDQ


  1. vetash
    14.10.2016 03:19

    Putty есть и под линукс: http://putty.org.ru/download.html
    Для линукса еще есть такая классная штука: https://sourceforge.net/projects/pacmanager/
    Кроме того для удаленного рабочего стола есть https://www.nomachine.com/


    1. ru_vds
      14.10.2016 11:04

      По поводу PuTTY — опечатка, поправим. PAC'ом сами не пользуемся, а про NoMachine и NX написано в статье.


  1. Endeavour
    14.10.2016 07:34

    Суть xrdp — тупое проксирование vnc в rdp?

    Мечтаю о нормальном рдп под линукс, передающем только измененную часть экрана, и не прокачивающем 1МБ/с+.


    1. ru_vds
      14.10.2016 11:12

      К сожалению, это так — xrdp нужен какой-либо бекэнд. Есть, кстати, x11rdp, но его нет в официальных репозиториях, а собирать не хотелось. Хотя, быть может, стоит собрать и положить также как TigerVNC для Debian'а…


  1. mrobespierre
    14.10.2016 07:34

    ну сколько можно советовать

    $ firewall-cmd --zone=public --add-port=3389/tcp --permanent
    $ firewall-cmd --zone=public --add-port=3389/udp --permanent
    $ firewall-cmd --reload

    ?

    firewalld во многом и создавался для того, чтобы так делать не надо было. правильно так:
    $ firewall-cmd --zone=public --add-port=3389/tcp
    $ firewall-cmd --zone=public --add-port=3389/tcp --permanent
    $ firewall-cmd --zone=public --add-port=3389/udp
    $ firewall-cmd --zone=public --add-port=3389/udp --permanent


    1. ru_vds
      14.10.2016 11:00

      Спасибо за замечание.


  1. master1312
    17.10.2016 14:26

    Я, может, ошибаюсь, но я не заметил в статье самый простой вариант для Linux-Linux. После установки иксов запускаем ssh с ключом -X и наслаждаемся окошками удаленных GUI-приложений у себя в системе. Это, конечно, для случая, когда не нужен именно рабочий стол.


    1. ru_vds
      17.10.2016 14:53

      Спасибо, за Ваш коментарий. Выше уже упоминали о «правильном конфиге для ssh». Конечно есть такой вариант. В стате не упоминается, потому что не упоминается. Может быть добавим…


  1. TrueBers
    17.10.2016 15:53

    Если вы хотите, чтобы VNC-сервер стартовал автоматически, создайте файл:
    $ vi /lib/systemd/system/vncsrv.service
    

    Эти вредные советы из статьи в статью тащат!

    man 'systemctl edit', Luke!
    


    1. mrobespierre
      17.10.2016 16:06
      +1

      да, кстати, верно человек говорит: если и создавать файл, то в /etc/systemd/system/, а /lib для стандартных юнитов


    1. ru_vds
      17.10.2016 16:22

      Спасибо за коментарий.


  1. KorDen32
    19.10.2016 16:37

    А следующая команда позволяет установить пароль для входа

    А команда-то где?


    Кстати, TeamViewer, если настроить доступ по IP, прекрасно работает напрямую, в поле ID можно указывать IP. В принципе, если IP на интерфейсе сервера напрямую виден с клиентской машины, при подключении по ID он тоже может сам подключиться напрямую, а не через сервера TV. Еще встречал обратный случай — "сервер" с серым IP, но для сервера клиент виден по внутреннему IP, а вот клиент не видит "сервер" напрямую. При подключении по ID оказалось, что установилось "обратное" соединение, опять без прокси.


    1. ru_vds
      19.10.2016 16:45

      Спасибо за коментарий.
      Команда выше указана:

      $ teamviewer --passwd [PASSWD]
      


  1. ru_vds
    19.10.2016 16:45
    -1

    _удалено_


  1. Bergtagen
    20.10.2016 12:20
    -1

    Для МАТЕ на Ubuntu вместо

    $ apt-get install mate-desktop-environment
    

    можно добавить репу
    $ apt-add-repository ppa:ubuntu-mate-dev/ppa
    $ apt-add-repository ppa:ubuntu-mate-dev/xenial-mate
    

    и поставить
    $ apt-get install ubuntu-mate-core ubuntu-mate-desktop
    

    Там оно сразу в комплекте с LightDM, кучкой софта и нескучными обоями :)