Настройка VNC

Материал из Wiki AlterOS
Перейти к: навигация, поиск

Чтобы установить сервер TigerVNC, откройте сеанс терминала и выполните следующую команду:

# sudo yum install tigervnc-server

Запустите команду

# vncserver

Которая создаст начальную конфигурацию и настроит пароль. Не добавляйте sudo в эту команду.

Вам будет предложено ввести и подтвердить пароль и установить его как пароль только для просмотра. Если вы решите настроить пароль только для просмотра, пользователь не сможет взаимодействовать с экземпляром VNC с помощью мыши и клавиатуры.

При первом запуске команды vncserver он создаст и сохранит файл пароля в каталоге ~/.vnc, который будет создан, если он отсутствует.

Обратите внимание, что :1 после имени хоста в выводе выше. Это указывает номер порта дисплея, на котором запущен сервер vnc. В нашем случае сервер работает на TCP-порту 5901 (5900 + 1). Если вы создадите второй экземпляр, vncserver он будет запущен на следующем свободном порту, т. Е. :2 Это означает, что сервер работает на порту 5902 (5900 + 2).

Важно помнить, что при работе с серверами VNC :X используется порт отображения 5900+X.

Прежде чем перейти к следующему шагу, сначала остановите экземпляр VNC с помощью команды vncserver с параметром -kill и номером сервера в качестве аргумента. В нашем случае сервер работает в порту 5901 ( :1), поэтому мы остановим его:

# vncserver -kill :1

Далее настроим VNC-сервер.

Откройте следующий файл:

# nano ~/.vnc/xstartup

И изменить последнюю строку exec /etc/X11/xinit/xinitrc на exec cinnamon-session:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec cinnamon-session

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

Мы создадим системный файл systemd, который позволит нам легко запускать, останавливать и перезапускать службу VNC по мере необходимости, так же, как и любую другую службу systemd.

# sudo cp /usr/lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

Откройте файл с помощью текстового редактора.

# sudo nano /etc/systemd/system/vncserver@\:1.service

И замените его содержимое на контент, расположенный ниже. При этом необходимо заменить <your_user> на фактическое имя пользователя

[Unit]
#Clean any existing files in /tmp/.X11-unix environment
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=<your_user>
ExecStartPre=-/usr/bin/vncserver -kill %i
ExecStart=/usr/bin/vncserver %i
PIDFile=/home/<your_user>/.vnc/%H%i.pid
ExecStop=-/usr/bin/vncserver -kill %i

[Install]
WantedBy=multi-user.target

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

# sudo systemctl daemon-reload

Следующий шаг – включить файл устройства со следующей командой:

# sudo systemctl enable vncserver@:1.service

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

Создадим папку для хранения пароля:

# sudo mkdir /opt/vnc

Скопируем файл с паролем в эту папку

# sudo cp /home/<Имя пользователя>/.vnc/passwd /opt/vnc/passwd

Изменим файлу права доступа

# sudo chmod 755 /opt/vnc/passwd

Наконец создадим файл vnc.desktop

# sudo touch /etc/xdg/autostart/vnc.desktop

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

# sudo nano /etc/xdg/autostart/vnc.desktop

[Desktop Entry]
Comment=
Terminal=false
Name=vnc
Exec=x0vncserver -display :0 PasswordFile=/opt/vnc/passwd
Type=Application

Откроем порт 5900:

# sudo firewall-cmd --permanent --add-port=5900/tcp

И перезапустим систему.

Запуск сервера происходит во время входа пользователя в систему