CentOS7配置VNC多用户访问指南

1星 需积分: 42 47 下载量 9 浏览量 更新于2024-08-30 1 收藏 3KB TXT 举报
本文档是关于在CentOS7系统中配置VNC服务器以支持多用户的操作指南,特别针对非root用户无法正常启动VNC的问题。采用的系统版本为CentOS7.2,使用的VNC服务器软件是TigerVNC。 在进行多用户VNC配置时,首先要安装TigerVNC-server。你可以通过执行以下命令来安装: ```shell sudo yum install tigervnc-server -y ``` 接下来,创建新的用户以便每个用户都可以有自己的VNC会话。例如,要创建名为"testuser"的用户,运行: ```shell sudo adduser testuser ``` 然后设置该用户的密码: ```shell passwd testuser ``` 为了使非root用户能够启动VNC服务,你需要复制默认的`vncserver@.service`到针对每个用户的新服务文件中。例如,对于用户"testuser",执行: ```shell sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@testuser.service ``` 对于其他用户,只需更改副本的服务文件名,如`vncserver@anotheruser.service`。 接着,编辑新创建的服务文件,如`/etc/systemd/system/vncserver@testuser.service`,将`ExecStart=/sbin/runuser-l <user> -c "/usr/bin/vncserver %i"`中的`<user>`替换为实际的用户名,如`ExecStart=/sbin/runuser-l testuser -c "/usr/bin/vncserver %i"`。 完成修改后,需要刷新systemd服务配置: ```shell sudo systemctl daemon-reload ``` 并启用针对每个用户的服务,例如: ```shell sudo systemctl enable vncserver@testuser.service ``` 如果防火墙正在运行,需要打开相应的端口。VNC通常使用5901至590N的端口,其中N是会话编号。要添加端口,执行: ```shell sudo firewall-cmd --permanent --zone=public --add-port=5901-5905/tcp ``` 之后,需要重启防火墙使改动生效: ```shell sudo firewall-cmd --reload ``` 现在,用户可以启动自己的VNC服务器并设置密码,例如对于"testuser": ```shell su - testuser vncserver ``` 当为新的用户添加VNC服务时,需要先禁用已存在的服务,以避免冲突。例如,禁用用户1的VNC服务: ```shell vncserver -kill :1 ``` 最后,再次执行`systemctl daemon-reload`和`systemctl enable`命令以确保所有服务更新已生效。 通过以上步骤,你可以在CentOS7系统上成功配置TigerVNC服务器以支持多个非root用户的独立会话。每个用户都可以通过各自的VNC客户端连接到他们的特定端口(如5901, 5902等)来访问桌面环境。