Настройка VNC — различия между версиями
Строка 57: | Строка 57: | ||
PIDFile=/home/your_user/.vnc/%H%i.pid | PIDFile=/home/your_user/.vnc/%H%i.pid | ||
ExecStop=-/usr/bin/vncserver -kill %i | ExecStop=-/usr/bin/vncserver -kill %i | ||
+ | |||
[Install] | [Install] | ||
WantedBy=multi-user.target | WantedBy=multi-user.target |
Версия 15:12, 23 мая 2023
Чтобы установить сервер 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] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking User=your_user# Clean any existing files in /tmp/.X11-unix environment 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
И перезапустим систему.