1. 安装TigerVNC服务器
在Debian系统上,首先需要安装TigerVNC的核心组件及依赖:
sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common
2. 创建专用用户及组管理权限
为提升安全性,建议创建专门的用户组(如vncusers
)和用户,并将用户添加至该组:
# 创建vncusers组
sudo groupadd vncusers
# 创建新用户(以johndoe为例)并设置密码
sudo useradd -m -s /bin/bash johndoe
sudo passwd johndoe
# 将用户添加至vncusers组
sudo usermod -a -G vncusers johndoe
# 可选:将用户加入sudo组以获得管理员权限
sudo usermod -aG sudo johndoe
3. 配置VNC服务运行权限
编辑TigerVNC的Systemd服务文件(默认路径为/etc/systemd/system/vncserver@:1.service
),将服务运行用户从root
改为普通用户(如johndoe
),组改为vncusers
:
sudo nano /etc/systemd/system/vncserver@:1.service
找到[Service]
部分的User
和Group
行,修改为:
User johndoe
Group vncusers
保存后,重新加载Systemd配置并重启服务:
sudo systemctl daemon-reload
sudo systemctl restart vncserver@:1.service
4. 设置VNC密码及工作目录权限
使用vncpasswd
命令为用户设置VNC访问密码(密码需包含字母、数字和特殊字符,长度不少于8位):
vncpasswd
修改用户家目录下的.vnc
目录权限,确保仅用户本人可读写:
sudo chown -R johndoe:vncusers /home/johndoe/.vnc
sudo chmod -R 700 /home/johndoe/.vnc
5. 配置防火墙允许VNC连接
若系统启用了ufw
防火墙,需开放VNC对应的端口(默认:1
对应5901
,:2
对应5902
,依此类推):
sudo ufw allow 5901/tcp
sudo ufw reload
6. 增强安全性设置
ssh -L 5901:localhost:5901 johndoe@your_server_ip
然后通过VNC客户端连接localhost:5901
。~/.vnc/xstartup
文件,在启动桌面环境前添加vncconfig -iconic &
,并修改桌面环境启动命令(如使用XFCE):nano ~/.vnc/xstartup
内容示例:#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
vncconfig -iconic &
startxfce4 &
保存后赋予执行权限:chmod +x ~/.vnc/xstartup
sudo apt update && sudo apt upgrade
7. 测试VNC连接
使用VNC客户端(如RealVNC、TightVNC)连接服务器IP及端口(如your_server_ip:5901
),输入之前设置的VNC密码即可登录。