11.3. 在服务器上启用多用户 VNC 访问
此流程配置 RHEL 服务器,以便多个用户可以同时在其上打开 VNC 会话。
先决条件
如果您之前使用
systemd单元文件配置了 VNC,请删除所有过时的 VNC 配置:rm /etc/systemd/system/vncserver@.service
[root]# rm /etc/systemd/system/vncserver@.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow
流程
将用户映射到显示号和端口号。
在
/etc/tigervnc/vncserver.users配置文件中,为每个要导出 VNC 会话的服务器用户添加一行::user-number=user-name
:user-number=user-nameCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 使用映射到所选现有用户的端口号和显示号替换 user-number。
- 使用所选现有用户的用户名替换 user-name。
例如:
:2=vncuser
:2=vncuserCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在防火墙中打开 5900 到 5903 的 TCP 端口:
firewall-cmd --permanent --add-service=vnc-server
[root]# firewall-cmd --permanent --add-service=vnc-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow 重新载入防火墙规则:
firewall-cmd --reload
[root]# firewall-cmd --reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在
/etc/tigervnc/vncserver-config-defaults配置文件中添加以下行:session=gnome alwaysshared
session=gnome alwayssharedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 这个配置有以下影响:
- 当远程用户登录时,VNC 服务器会启动 GNOME 会话。
- 多个用户可以同时连接到 VNC 服务器。
作为导出 VNC 会话的每个服务器用户,为用户设置 VNC 密码:
vncpasswd
[regular-user]$ vncpasswdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在连接到服务器上的桌面时,远程客户端必须输入此密码。
如果您之前为用户配置了 VNC,请确保配置文件具有正确的 SELinux 上下文:
restorecon -RFv ~/.vnc
[regular-user]$ restorecon -RFv ~/.vncCopy to Clipboard Copied! Toggle word wrap Toggle overflow 为常规用户启用并启动 VNC 服务器单元:
systemctl enable --now vncserver@:user-number
[root]# systemctl enable --now vncserver@:user-numberCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如果服务器使用专有 Nvidia 驱动程序,请禁用 Wayland:
-
取消
/etc/gdm/custom.conf配置文件中WaylandEnable=False行的注释。 -
将
DefaultSession=gnome-xorg.desktop选项添加到配置文件的[daemon]部分。 - 重启服务器。
-
取消