В этой статье я покажу вам, инструменты, которые позволят вам получить доступ к удаленному рабочему столу на машинах, работающих с Centos / RHEL.
Все эти приложения работают в режиме клиент-сервер.
Поэтому вам нужно запустить приложение на стороне сервера на удаленном компьютере, после чего вы сможете подключиться к нему со всего мира.
Конечно, в этом справочном руководстве я расскажу вам, как настроить это безопасно, поэтому вы можете получить доступ к вашему серверу.
Перед началом работы вам нужен только SSH-доступ к вашему серверу и права на установку программного обеспечения.
Вам нужно знать пароль root или разрешения на использование sudo.
Все команды будут работать на каждом сервере CentOS 5/6/7.
Перед запуском вам необходимо установить среду рабочего стола на свой сервер:
# yum groupinstall 'GNOME Desktop Environment' 'X Window System'
1.VNC
x11vnc – примеры этих 3 методов для получения удаленного доступа.
VNC означает Virtual Network Computing) – очень полезный сетевой графический протокол
см. также Как установить VNC сервер и клиент на Astra Linux / Ubuntu
Возможно, вам нужно включить репозиторий EPEL (Extra Packages for Enterprise Linux).
Запустите:
# yum -y install epel-release
Теперь мы можем установить x11vnc.
Эта команда установит сервер и решит все зависимости:
# yum -y install x11vnc
Затем мы будем защищать сервер с паролем:
# x11vnc -storepasswd Enter VNC password: Verify password: Write password to /root/.vnc/passwd? [y]/n y Password written to: /root/.vnc/passwd
Не используйте простой пароль!
Мы готовы запустить сервер:
# x11vnc --reopen --forever -rfbauth ~/.vncpasswd &
# netstat -an | grep 5900 tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN tcp6 0 0 :::5900 :::* LISTEN If its ok, simply try to connect to it using vncviewer. #yum -y install vnc #vncviewer YOUR_SERVER_IP
Это все! Теперь у вас есть доступ к вашему рабочему столу.
После перезагрузки просто запустите ssh снова.
2) Tigervnc сервер
Tigervnc – это высокопроизводительная платформа-нейтральная реализация VNC
<span class=""># yum install -y tigervnc-server</span>
Позволяет копировать пример config и редактировать его:
# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service</span>
# vi /etc/systemd/system/vncserver@:1.service
Пример конфигурации:
After=syslog.target network.target
[Service] Type=forking
ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’
ExecStart=/usr/sbin/runuser -l YOUR_NAME -c “/usr/bin/vncserver
PIDFile=/home/YOUR_NAME/.vnc/%H%i.pid
ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’
[Install] WantedBy=multi-user.target
Теперь включите автозапуск и перезапустите его:
# <span class="">systemctl enable vncserver @: 1.service</span> # <span class="">systemctl restart vncserver @: 1.service
# vncviewer YOUR_SERVER_IP
3) XRDP
xrdp – это сервер протокола удаленного рабочего стола с открытым исходным кодом.
Прежде всего нам нужно установить репозиторий EPEL и сервер xrdp:
# yum -y install epel-release; # yum -y install xrdp
Теперь давайте запустим сервер
# systemctl start xrdp.service
Проверьте, запущен ли он, и добавьте его в автозапуск.
# netstat -an | grep 3389 tcp 0 0 0.0.0.0:3389 0.0.0.0:* LISTEN # systemctl enable xrdp.service
4) Teamviewer
Teamviewer не существует в стандартных репозиториях, поэтому нам нужно установить wget и загрузить пакет TeamViewer rpm
# yum -y install wget # wget https://download.teamviewer.com/download/linux/teamviewer.x86_64.rpm
Установите его, используя следующую команду:
# yum install teamviewer.x86_64.rpm
И установите пароль
# teamviewer passwd YOUR_PASSWORD ОК # systemctl start teamviewerd.service
Теперь вам нужно только подключить свой идентификатор
</span> # teamviewer –info TeamViewer ID: 9XXXXXXX7 <span id="result_box" class="" lang="ru">
5) FreeNX
FreeNX – это решение удаленного доступа, основанное на технологиях с открытым исходным кодом корпоративного класса от NoMachine.
Если вам нужен именно этот инструмент для получения удаленного доступа, вы можете перейти на облачную версию.
Прежде всего нам нужно добавить e EPEL + nux-dextop репозитории, для Centos 6:
# rpm -Uvh https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm # rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm
Установите сервер и агент:
# yum install freenx-server nxagent
Включить аутентификацию passdb:
# echo 'ENABLE_PASSDB_AUTHENTICATION = "1"' /etc/nxserver/node.conf
Теперь нам нужно создать пользователя для удаленного доступа и назначить ему пароль:
# /usr/libexec/nx/nxserver --adduser bob NX> 100 NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: not detected) NX> 1000 NXNODE - Version 3.2.0-74-SVN OS (GPL, using backend: not detected) NX> 716 Public key added to: /home/bob/.ssh/authorized_keys2 NX> 1001 Bye. NX> 999 Bye #/usr/libexec/nx/nxserver --passwd bob NX> 100 NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: not detected) New password: Password changed. NX> 999 Bye
# yum install opennx
После запуска мастера opennx вам будет задано имя сеанса, адрес сервера и порт.
Самое главное – установить свой ключ.
Вам необходимо скопировать ключ с серверов /etc/nxserver/client.id_dsa.key и вставить его общую вкладку свойств вашего клиента.