安装
yum install tigervnc-server -y
创建vnc配置文件
拷贝一个服务设置的模板:
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
注意: 一个用户对应1个配置文件,当需要3用户时,上述指令需要执行3次,vncserver@:1.service文件序号迭代至vncserver@:3.service。这里的序号也对应后续连接的端口序号。
修改配置文件内容
vim /etc/systemd/system/vncserver@:1.service
完整修改后的root用户配置如下:
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
修改点:
Type=forking
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
配置完成后,重启systemd:
systemctl daemon-reload
设置vnc密码
# 切换至对应用户,配置VNC密码。不同用户的密码不同,均需要单独配置。
su <USER>
vncpasswd
设置完密码后配置只读密码选择n,不进行配置:
配置防火墙来让 VNC 服务正常工作,将vnc服务进程添加到白名单中:
firewall-cmd --permanent --add-service vnc-server
systemctl restart firewalld.service
启动VNC服务
# 设置开机启动
systemctl enable vncserver@:1.service
# 启动vnc server
systemctl start vncserver@:1.service
# 查看vnc server状态
systemctl status vncserver@:1.service
# 检查vnc进程
ps -ef | grep vnc
# 查看服务监听的端口
netstat -lnpt|grep vnc
可看到 root 用户的连接序号为 1,对应的实际端口是 5901。可以使用 IP 地址和序号进行连接
例如 192.168.1.1:1,这里的序号1并非指服务器的实际端口号,而是表示 VNC 连接的顺序,从 1 开始编号。实际上,VNC 服务本身默认使用 5900 端口,所以第一个连接的端口是 5901(5900+1)
vnc viewer连接
vnc viewer下载
官方下载地址:
https://downloads.realvnc.com/download/file/viewer.files/VNC-Viewer-7.10.0-Windows-64bit.exe
推荐使用便携版:
下载完成后,文件名称类似如下VNC-Viewer-7.10.0-Windows-64bit.exe,双击exe文件可直接使用。
连接vnc server
进入RealVNC Viewer后,左上角File–>New connection添加新的连接: