在 Debian 上,TigerVNC 默认就是带加密能力的,但很多人配置的 VNC 其实是“明文 + 无认证”或“仅密码无加密”,所以容易被抓包。下面按推荐程度给你几种加密 TigerVNC 连接的方法。
TigerVNC 自带 TLS 加密,不需要额外工具。
sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common
vncpasswd
(用户目录下生成 ~/.vnc/passwd)
vncserver :1 -geometry 1920x1080 -depth 24 -SecurityTypes TLSVnc
说明:
TLSVnc = TLS 加密 + VNC 密码host:5901✅ 这是最简单且安全的方式
适合服务器环境。
openssl req -x509 -newkey rsa:2048 -keyout vnc.key -out vnc.crt -days 365 -nodes
vncserver :1 -SecurityTypes X509Vnc \
-X509Key /path/vnc.key \
-X509Cert /path/vnc.crt
客户端需要导入 vnc.crt,可防中间人攻击。
如果你不想折腾证书,SSH 隧道最稳。
ssh -L 5901:localhost:5901 user@debian-server
vncserver :1
localhost:5901✅ 即使 VNC 本身不加密也安全
✅ 可禁用 VNC 端口对外网暴露
不要用以下方式:
-SecurityTypes None
-SecurityTypes VncAuth # 无加密
检查当前安全类型:
vncserver -list
sudo ufw allow 22
sudo ufw deny 5901
(如果用 SSH 隧道)
| 场景 | 推荐方案 |
|---|---|
| 个人 | TLSVnc |
| 服务器 | X509Vnc |
| 最安全 | SSH + VNC |
如果你愿意,我可以:
直接说你的使用场景就行。