CentOS VNC Server安装配置详解
一、简介
VNC(Virtual Network Computing)是一种使用RFB协议的远程桌面虚拟化软件,它允许用户通过网络远程控制另一台计算机,本文将详细介绍如何在CentOS系统上安装和配置VNC Server,以便实现远程桌面连接。
二、安装图形界面
1. 安装X Windows System图形界面
yum update y yum groupinstall "X Window System" yum groupinstall "MATE Desktop" systemctl setdefault graphical.target reboot
2. 安装GNOME图形界面
yum update y yum groupinstall "GNOME Desktop" systemctl setdefault graphical.target reboot
三、安装VNC Server
确保系统是最新的:
sudo yum update y
安装TigerVNC Server:
sudo yum install tigervncserver y
四、配置VNC Server
1. 创建VNC配置文件
复制服务设置模板:
sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
根据需要为每个用户创建配置文件,例如为三个用户创建配置文件:
sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:2.service sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:3.service
2. 修改配置文件内容
编辑vncserver@:1.service
文件:
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking User=root Clean any existing files in /tmp/.X11unix 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=/usr/bin/vncserver kill %i [Install] WantedBy=multiuser.target
对非root用户如testvnc
,编辑其对应的服务文件,例如vncserver@:2.service
:
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking User=testvnc Clean any existing files in /tmp/.X11unix environment ExecStartPre=/bin/sh c '/usr/bin/vncserver kill %i > /dev/null 2>&1 || :' ExecStart=/sbin/runuser l testvnc c "/usr/bin/vncserver %i" PIDFile=/home/testvnc/.vnc/%H%i.pid ExecStop=/usr/bin/vncserver kill %i [Install] WantedBy=multiuser.target
3. 完整配置文件参考
root用户的完整配置如下:
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking User=root Clean any existing files in /tmp/.X11unix 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=/usr/bin/vncserver kill %i [Install] WantedBy=multiuser.target
非root用户如testvnc
的完整配置如下:
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking User=testvnc Clean any existing files in /tmp/.X11unix environment ExecStartPre=/bin/sh c '/usr/bin/vncserver kill %i > /dev/null 2>&1 || :' ExecStart=/sbin/runuser l testvnc c "/usr/bin/vncserver %i" PIDFile=/home/testvnc/.vnc/%H%i.pid ExecStop=/usr/bin/vncserver kill %i [Install] WantedBy=multiuser.target
五、设置VNC密码
为当前用户设置VNC密码:
vncpasswd
根据提示输入并确认密码。
六、配置防火墙
开放VNC端口(例如5901):
sudo firewallcmd permanent addport=5901/tcp sudo firewallcmd reload
如果配置多用户,开放多个端口:
sudo firewallcmd permanent addport=59015903/tcp sudo firewallcmd reload
七、启动VNC服务
启动VNC服务并设置为开机自启:
sudo systemctl start vncserver@:1.service sudo systemctl enable vncserver@:1.service
对于其他用户,执行类似操作:
sudo systemctl start vncserver@:2.service sudo systemctl enable vncserver@:2.service
八、VNC Viewer连接
1. VNC Viewer下载
可以从官方网站下载适用于不同操作系统的VNC Viewer。
2. 连接VNC Server
打开VNC Viewer,输入服务器IP地址和端口号(例如YOUR_SERVER_IP:1
),然后根据提示输入之前设置的VNC密码即可连接到远程桌面。
九、FAQs
1. 如何更改VNC Server的分辨率?
在~/.vnc/xstartup
文件中添加以下行:
"Geometry" = "1280x1024"
2. 如何允许多个用户同时连接?
为每个用户创建独立的VNC服务单元文件,并配置各自的端口和用户信息,然后依次启动这些服务。