TigerVNC是一款轻量、高效的VNC服务器,适用于Ubuntu系统的远程桌面共享。以下是详细配置步骤,涵盖安装、密码设置、桌面环境配置、服务启动及安全加固等关键环节:
打开终端,执行以下命令更新软件包列表并安装TigerVNC服务器及依赖:
sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common -y
安装完成后,系统会提示确认安装,输入Y继续。
运行vncpasswd命令设置专用于VNC连接的密码(与系统用户密码无关):
vncpasswd
Y或N,通常选N。TigerVNC需要通过~/.vnc/xstartup文件指定启动的桌面环境(如GNOME、Xfce)。若文件不存在,手动创建:
nano ~/.vnc/xstartup
根据桌面环境选择配置:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
gnome-session &
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
startxfce4 &
保存文件(Ctrl+O→Enter→Ctrl+X),并赋予执行权限:
chmod +x ~/.vnc/xstartup
注意:若未安装桌面环境(如GNOME),需先执行sudo apt install ubuntu-desktop(GNOME)或sudo apt install xfce4(Xfce)。
使用以下命令启动VNC服务器,指定显示编号(如:1,对应端口5901=5900+1):
vncserver :1 -geometry 1920x1080 -depth 24 -localhost no
-geometry:设置桌面分辨率(如1920x1080);-depth:设置颜色深度(如24位);-localhost no:允许非本地连接(默认仅本地访问,需关闭以允许远程连接)。~/.vnc目录及日志文件,启动成功后会显示会话ID(如New 'X' desktop is ubuntu:1)。若系统启用了ufw防火墙,需开放VNC端口(默认5901对应:1会话):
sudo ufw allow 5901/tcp
sudo ufw enable # 若未启用防火墙,可跳过
验证端口是否开放:
sudo ufw status
应显示5901/tcp ALLOW。
为避免每次重启系统后手动启动VNC服务器,可创建systemd服务文件:
sudo nano /etc/systemd/system/vncserver@:1.service
粘贴以下内容(将your_username替换为实际用户名):
[Unit]
Description=Start TigerVNC server at startup
After=syslog.target network.target
[Service]
Type=forking
User=your_username
Group=your_username
WorkingDirectory=/home/your_username
PIDFile=/home/your_username/.vnc/%H:1.pid
ExecStartPre=-/usr/bin/vncserver -kill :1 > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1920x1080 -localhost no :1
ExecStop=/usr/bin/vncserver -kill :1
[Install]
WantedBy=multi-user.target
保存并退出,执行以下命令启用并启动服务:
sudo systemctl daemon-reload
sudo systemctl enable vncserver@:1.service
sudo systemctl start vncserver@:1.service
验证服务状态:
sudo systemctl status vncserver@:1.service
应显示active (running)。
在本地计算机(Windows/macOS/Linux)上安装VNC客户端(如TigerVNC Viewer、RealVNC Viewer),打开客户端并输入:
服务器IP地址:1 # 如192.168.1.100:1(对应:1会话)
点击“连接”,输入之前设置的VNC密码,即可远程控制Ubuntu桌面。
为避免直接暴露VNC端口(默认5901),可通过SSH隧道加密连接:
在本地计算机执行以下命令(替换your_username、your_server_ip):
ssh -L 5901:localhost:5901 -N -f -l your_username your_server_ip
然后,在VNC客户端中输入localhost:1,即可通过SSH隧道安全连接。
常见问题排查:
~/.vnc/xstartup文件是否正确配置(如桌面环境是否匹配);-localhost no是否设置、服务是否启动;-geometry参数(如1280x720)。通过以上步骤,即可在Ubuntu上成功共享TigerVNC屏幕,实现远程控制或访问。