Linux TigerVNC安装配置指南
TigerVNC是一款高性能、开源的VNC服务器,适用于Linux系统的远程桌面访问。以下是详细的安装与配置步骤,涵盖主流发行版(CentOS/RHEL、Ubuntu):
确保系统软件包为最新版本,避免依赖冲突:
# CentOS/RHEL/Fedora
sudo yum update -y # 或 sudo dnf update -y(Fedora)
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
sudo yum install tigervnc-server -y
sudo apt install tigervnc-standalone-server tigervnc-common -y
若系统未预装桌面环境(如GNOME、XFCE),需手动安装:
sudo yum groupinstall "X Window System" "GNOME Desktop" -y
sudo apt install ubuntu-desktop -y # 或 xfce4(轻量级桌面)
为当前用户创建VNC访问密码(密码长度至少6位):
vncpasswd
输入密码后,系统会将密码存储在~/.vnc/passwd文件中(仅用户本人可访问)。
编辑系统级VNC配置文件,定义用户与端口的映射关系:
sudo vim /etc/tigervnc/vncserver.users
添加以下内容(:1对应端口号5901,:2对应5902,依此类推):
:1=username # 将username替换为实际用户名
编辑用户级的xstartup文件,指定启动的桌面环境(如GNOME、XFCE):
vim ~/.vnc/xstartup
添加以下内容(以GNOME为例,若使用XFCE则替换为startxfce4 &):
#!/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 & # 或 startxfce4 &
保存后,赋予脚本执行权限:
chmod +x ~/.vnc/xstartup
通过Systemd管理VNC服务,实现开机自启动:
sudo cp /usr/lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
sudo vim /etc/systemd/system/vncserver@:1.service
修改文件中的User(用户名)和Group(用户组),并添加桌面参数:
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
User=username # 替换为实际用户名
Group=username
WorkingDirectory=/home/username
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1920x1080 :1
ExecStop=/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
保存后,重新加载Systemd配置:
sudo systemctl daemon-reload
启动指定端口的VNC服务(如:1对应5901端口):
vncserver :1
首次启动会提示设置密码,后续启动可直接使用vncserver :1。
停止指定端口的VNC服务:
vncserver -kill :1
通过Systemd启用VNC服务,实现系统重启后自动启动:
sudo systemctl enable vncserver@:1.service
sudo systemctl start vncserver@:1.service
允许VNC流量通过防火墙(以firewalld和UFW为例):
sudo firewall-cmd --permanent --add-service=vnc-server
sudo firewall-cmd --reload
sudo ufw allow 5901/tcp # 5901为VNC端口(:1对应5901)
sudo ufw enable
使用TigerVNC Viewer或其他VNC客户端(如RealVNC、Remmina),输入服务器IP地址和端口号(格式:IP:端口号,如192.168.1.100:5901),然后输入之前设置的VNC密码即可连接。
xstartup文件中的桌面环境(如gnome-session、startxfce4)与系统安装的桌面环境一致,否则可能导致启动黑屏。:2对应5902端口)。ssh -L 5901:localhost:5901 user@server-ip),防止密码泄露。~/.vnc/hostname:1.log)定位问题。