在CentOS 6系统中配置VNC服务器可以方便地进行远程图形化管理,尤其适用于需要图形界面的服务器运维场景,本文将详细介绍CentOS 6下VNC服务器的完整配置流程,包括安装、配置、安全设置及常见问题解决,帮助用户快速搭建稳定安全的远程桌面环境。

安装VNC服务器软件
在CentOS 6中,默认的VNC服务器软件是TigerVNC,它是一个高性能的远程桌面解决方案,首先需要通过yum包管理器安装必要的软件包,打开终端,执行以下命令:
sudo yum update -y sudo yum install tigervnc-server -y
安装完成后,系统会自动创建/etc/sysconfig/vncservers配置文件,这是VNC服务的主要配置文件,建议安装vnc-server软件包以确保兼容性,尽管TigerVNC已包含核心功能。
配置VNC用户和密码
VNC服务器需要为每个用户单独配置密码,首先创建一个需要远程访问的用户账户(例如vncuser):
sudo useradd -m vncuser sudo passwd vncuser
然后切换到该用户,设置VNC密码:
su - vncuser vncpasswd
系统会提示输入两次密码,该密码将用于VNC客户端连接,密码长度建议至少为6位,且包含字母和数字以提高安全性。
配置VNC服务文件
编辑/etc/sysconfig/vncservers文件,添加需要启动的VNC会话,为用户vncuser启动两个桌面会话(端口5901和5902):
sudo nano /etc/sysconfig/vncservers
在文件末尾添加以下内容:
VNCSERVERS="1:vncuser 2:vncuser" VNCSERVERARGS[1]="-geometry 1024x768 -nolisten tcp" VNCSERVERARGS[2]="-geometry 1280x1024 -nolisten tcp"
参数说明:

VNCSERVERS:定义会话编号和用户,1对应端口5901,2对应5902。-geometry:设置桌面分辨率。-nolisten tcp:禁用TCP监听,仅通过SSH隧道连接以提高安全性。
配置VNC桌面环境
默认情况下,VNC会启动一个简单的窗口管理器,若需使用完整的GNOME桌面环境,需进行额外配置,首先安装GNOME桌面组件:
sudo yum groupinstall "Desktop" -y sudo yum install gnome-core -y
然后创建VNC启动脚本,在用户家目录下创建.vnc/xstartup文件:
nano ~/.vnc/xstartup
#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec /etc/X11/xinit/xinitrc [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey vncconfig -iconic & gnome-session &
赋予执行权限:
chmod +x ~/.vnc/xstartup
启动并设置VNC服务
配置完成后,启动VNC服务:
sudo service vncserver start
首次启动时会自动生成初始桌面环境,若需开机自启,执行:
sudo chkconfig vncserver on
检查服务状态:
sudo service vncserver status
安全加固建议
-
使用SSH隧道:避免直接暴露VNC端口,通过SSH转发连接,客户端执行:
ssh -L 5901:localhost:5901 user@server_ip
然后本地通过
localhost:5901连接VNC。
-
防火墙配置:若需直接访问,开放VNC端口(如5901):
sudo iptables -A INPUT -p tcp --dport 5901 -j ACCEPT sudo service iptables save
-
更改默认端口:修改
/etc/sysconfig/vncservers中的会话编号,避免使用常见端口。 -
定期更新密码:定期运行
vncpasswd更新VNC密码。
常见问题排查
- 连接黑屏或无响应:检查
.vnc/xstartup文件配置是否正确,确保gnome-session或startx命令正确执行。 - 权限问题:确保用户对
.vnc目录有读写权限,执行chmod 700 ~/.vnc。
相关问答FAQs
问题1:如何修改VNC桌面分辨率?
解答:编辑/etc/sysconfig/vncservers文件,在VNCSERVERARGS中调整-geometry参数,将分辨率改为1920x1080,修改为VNCSERVERARGS[1]="-geometry 1920x1080",然后重启VNC服务。
问题2:VNC连接时提示“Authentication failed”怎么办?
解答:首先确认VNC密码是否正确,可通过vncpasswd重新设置,其次检查用户账户是否被锁定,使用passwd -S username查看状态,若问题依旧,删除~/.vnc/目录下的passwd文件后重新设置密码。