Удаленное управление рабочим столом CentOS

06 Feb 2013 | Автор: anchous |

Взял тут с оказией в Хетзере дедик на AMD Athlon 5600+ X2 с 6Gb RAM на борту под различный софт по интернет проектам, и так как сервер стоит 30 евросов в месяц, то меня немного замучала жабулька платить еще 15 евро за винду, поэтому решил поднять CentOS 6.2, прикрутить к ней X Windows для удаленной работы и поднять уже под Sun Virtual Box винду в которую и заливать весь необходимый для работы софт.

Откровенно говоря я по началу хотел ставить клиента X  и работать с ним через Xming X server, но потом решил что в принципе ни разу не ставил VNC под юнихом, так что решил попутно накропать how2. Правда в веб-панели управления хостинга Hetzer имеется автоматическая установка сервера VNC,  но хотелось поиграться самому.

CentOS 6.2 поставил из Rescue панели, а вот дальше уже пришлось ручками:

апдейтим установленные пакеты
# yum update
ставим VNC сервер (поскольку пользую 6 версию центосины, то ставить надо tigervnc-server, а не vnc-server как могло бы подуматься)
# yum -y install tigervnc-server
затем ставим саму оболочку Х, опять же с особенностями 6 версии (на которой не прокатывают классические yum -y groupinstall “KDE (K Desktop Environment)”)
# yum groupinstall Desktop
После этого настраиваем пользователей системы либо через команду useradd, либо руками через vipw. Мне к примеру больше нравится второй вариант.
# useradd anchous
# passwd anchous
# useradd teStUser
# passwd teStUser

Добавляем созданных пользователей в файл  /etc/sysconfig/vncservers каждого со своим разрешением экрана
##### /etc/sysconfig/vncservers ###

VNCSERVERS="1:teStUser 2:anchous"
VNCSERVERARGS[1]="-geometry 1024x786 -localhost"
VNCSERVERARGS[2]="-geometry 1280x1024 -localhost"

###########################
в принципе можно не использовать -localhost так как эта опа говорит об использовании VNC только с loopback, но мы будем инкапсулировать VNC сессию в SSH канал для того чтобы повысить её безопасность и не дразнить школоту поднятым сервисом на стандартном порту.

Теперь следует задать VNC пароли для пользователей, что придется под их аккаунтами
# su teStUser
$ vncpasswd

Запускаем сервер VNC, при этом система создаст необходимые скрипты для каждого взведенного пользователя
# /sbin/service vncserver start
проверим корректность выключения и поставим сервис на автозапуск
# /sbin/service   vncserver stop
# /sbin/chkconfig vncserver on

если бы мы в настройках скрипта vncservers не поставили флаг -localhost , то уже на это бы моменте мы могли бы подключаться к системе через любой VNC Viewer, например UltraVNC или родной TigerVNC, обратившись на IP:5901. Используемые порты идут от 5900 и для каждого пользователя работает свой порт с цифрой на конце, соответствующей его номеру в конфиге vncservers.

Но так как у нас стоит запрет на внешнее использование, то придется добавить порты  5901 (ну и еще 100500 для остальных пользователей сервера) в ssh-клиент, как я уже проделывал для инкапсуляции RDP соединения в ssh. После установления ssh-соединения с сервером мы обращаемся UltraVNC к localhost:5901

SSH-cессия конечно подтормаживает против прямого соединения, так что стоит убедиться что в вашем клиенте VNC включена компрессия. И вообще в таком разе лучше пользоваться родным клиентом от TigerVNC так как клиент работает заметно быстрее, особенно если уровень компрессии выставить в районе 6.

Якобы можно ускорить ssh соединение за счет внесения доп.фич в конфиг демона OpneSSH sshd_config. Правда реально они отрабатывают только на ssh v.1, где они не включены и которым я уже не знаю кто пользуется, в v.2 где несколько иной синтаксис, прироста в скорости я не заметил, так как фичи по умолчанию подняты примерно с теми же ключиками:

Compression yes
Ciphers blowfish-cbc,aes128-cbc,3des-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc
VN:F [1.9.21_1169]
Rating: 1.0/10 (1 vote cast)
VN:F [1.9.21_1169]
Rating: +1 (from 1 vote)
Удаленное управление рабочим столом CentOS, 1.0 out of 10 based on 1 rating

Теги: , ,

Ваш отзыв