server端
(1)要安装所需的软件包,请以root身份运行以下命令:
# yum -y install tigervnc-server tigervnc
(2)创建vnc 用户,用户名称testuser1
# useradd testuser1
# passwd testuser1
$ su - testuser1
$ vncpasswd
$ exit
(3)要为用户创建VNC服务器配置文件,请复制原始VNC配置文件并为该用户进行编辑。
# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
(4)编辑/etc/systemd/system/vncserver@:1.service文件编辑器文件,并用适当的vncuser用户名替换字符串“USER” 。在此示例中,用户将是“testuser1” 。
应该为每个用户创建一个单元文件。
# cat /etc/systemd/system/vncserver@:1.service
[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 testuser1 -c "/usr/bin/vncserver %i"
PIDFile=/home/testuser1/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
注意:
如果用户是root用户,请更改路径PIDFile到/root/.vnc/%H%i.pid 。
要添加更多用户,请创建新用户“vncserver@:#.service”如上所述的文件并将“USER”字符串更改为其他用户。
(4)配置防火墙以接受VNC的传入连接。执行此命令可以在防火墙中打开与VNC相关的端口。
# firewall-cmd --permanent --zone=public --add-port 5901/tcp
此命令仅为传入连接打开TCP端口5901。在需要时,也可以使用相同的命令打开其他端口。
重新加载防火墙以使防火墙规则生效
# firewall-cmd --reload
(5)重新加载配置:
# systemctl daemon-reload
(6)启用并启动vnc服务:
确保服务将在系统启动时启动:
# systemctl enable vncserver@:1.service
要启动服务(如果尚未启动):
# systemctl start vncserver@:1.service
也可以根据以下文档进行配置:
How to configure VNC Server in Red Hat Enterprise Linux 7
https://access.redhat.com/solutions/966063
client端
通过SSH通过隧道安全地连接到VNC
(1)要安装所需的软件包,以root用户的身份执行以下命令
# yum install tigervnc
(2)远程连接
vncviewer -via testuser1@192.168.122.234 192.168.122.234:1 192.168.122.234是vncserver的IP地址,testuser1是vnc用户名称