Gnome Classic настраиваем VNC сервер

Posted by

Первым делом удаляем VNC-сервер дефолтного значения в моей системе .5 Desktop Presice amd64, т. к. он слишком убог и решении поставленной задачи — сама задача превращается в сущий ад подбора правильных настроек, а потому я остановил свой выбор на бесплатном (а платный я бы даже и не использовал) сервере x11vnc, с ним у меня сложились более теплые воспоминания, т. к. все заработало с первого раза.

Наглядное видео настройки VNC сервера по данной ссылке:

ekzorchik@desktop:~$ sudo rm -Rf /var/lib/apt/lists

ekzorchik@desktop:~$ sudo apt-get update && sudo apt-get upgrade -y

ekzorchik@desktop:~$ sudo apt-get remove vino -y

Устанавливаю x11vnc в систему из дефолтных репозитариев:

ekzorchik@desktop:~$ sudo apt-get install x11vnc -y

Генерирую пароль для доступа к VNC серверу текущей системы:

ekzorchik@desktop:~$ x11vnc -storepasswd

Enter VNC password: 712mbddr@

Verify password: 712mbddr@

Write password to /home/ekzorchik/.vnc/passwd? [y]/n y

Password written to: /home/ekzorchik/.vnc/passwd

После этого пароль по-умолчанию сохраняется в /home/USERNAME/.vnc/passwd (где USERNAME — имя пользователя, под которым вы выполнили команду).

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

ekzorchik@desktop:~$ sudo nano /etc/init/x11vnc.conf

start on login-session-start

script

x11vnc -dontdisconnect -display :0 -auth /var/run/lightdm/root/:0 -notruecolor -noxfixes -shared -forever -rfbport 5900 -bg -o /var/log/x11vnc.log -rfbauth /home/ekzorchik/.vnc/passwd -no6

end script

После не забываем сохранить внесенные изменения.

А теперь поясню значение указанных выше опций:

  • -auth /var/run/lightdm/root/:0 → путь к ссылке на X-сессию.
  • -rfbauth /home/ekzorchik/.vnc/passwd → путь к файлу с паролем для входа на сервер, можно переместить в любое место лишь бы был доступ на чтение.
  • -forever → после запуска x11vnc ждет подключение клиента, а по завершении подключения — завершается свою работу
  • -display :0 → явно указываем используемый дисплей
  • -rfbport 5900 → явно указываем используемый порт для VNC сервера
  • -bg → запускать в фоне.
  • -o /var/log/x11vnc.log → лог работы

После перезагружаем сервер и проверяем доступность VNC сервера:

ekzorchik@desktop:~$ sudo shutdown -r now

после перезагрузки проверяю, а запущен ли сервис x11vnc:

ekzorchik@desktop:~$ sudo netstat -tulpn | grep x11vnc

tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN 1358/x11vnc

Как видно, сервер запущен и ожидает подключения.

Настраиваю подключение к данной системе с другой системе, к примеру в роли клиента VNC выступит пакет Remmina (версия 0.9.99.1) на Ubuntu 12.04.5 Precise Desktop amd64 с рабочим окружением Gnome Classic:

Приложения — Интернет — Клиент удаленного рабочего стола Remmina — Соединение — Создать и заполняю карточку подключения к системе где настроен сервис x11vnc:

Название: 10.7.9.209

  • Протокол: VNC — Virtual Network Computing

вкладка «Основные»

  • Сервер: 10.7.9.209
  • Пароль: 712mbddr@
  • Глубина цвета: High color (16 бит)
  • Качество: Хорошее

После нажимаю «Сохранить» и «Подключиться», в результате произойдет подключение к удаленной системе где в роли VNC сервиса выступает пакет x11vnc

Так выглядит удаленное подключение к VNC серверу через клиент Remmina

Как видно подключение успешно прошло.

Посмотреть список всех опций:

ekzorchik@desktop:~$ x11vnc -opts

ну и не забываем про мануал: man x11vnc

Итого все работает. Цель которую я преследовал в показе всех шагов достигнута, теперь у Вас есть не только доступ через безопасную консоль SSH, то и визуализированный доступ (если конечно он Вам нужен) к рабочей станции под управлением Ubuntu Precise редакции Desktop, как сделано у меня. Но я в свою очередь не так часто пользуюсь GUI подключение, все же консоль дает намного больше удовлетворения и практического смысла, впрочем каждому своё. На этом я прощаюсь с Вами читатели моего блога и канала, с уважением — Олло Александр aka ekzorchik.