Ubuntu下TigerVNC防火墙设置指南(以UFW为例)
TigerVNC依赖TCP端口通信,若系统启用UFW(Ubuntu默认防火墙工具),需先确保其处于激活状态。终端执行以下命令启用UFW:
sudo ufw enable
启用后会提示“Command may disrupt existing ssh connections”,输入y确认(若未使用SSH反向隧道,需谨慎操作)。
TigerVNC的默认端口规则为:显示号(:n)对应的端口号=5900+n(如:1对应5901、:2对应5902)。根据实际使用的显示号,执行对应命令:
:1(最常见):sudo ufw allow 5901/tcp:2):5901替换为5900+显示号(例如:2对应5902)。执行以下命令查看UFW规则列表,确认已添加的VNC端口规则:
sudo ufw status
正常输出应包含类似条目(以:1为例):
Status: active
To Action From
-- ------ ----
5901/tcp ALLOW Anywhere
5901/tcp (v6) ALLOW Anywhere (v6)
若未显示,可尝试重新加载UFW:
sudo ufw reload。
若仅需允许特定IP地址访问VNC服务(如公司内网IP),可将ALLOW规则细化为具体IP。例如,允许192.168.1.100访问5901端口:
sudo ufw allow from 192.168.1.100 to any port 5901/tcp
此操作可有效减少非法访问风险。
为避免VNC端口直接暴露在公网,建议通过SSH隧道加密传输。本地终端执行以下命令(替换username为服务器用户名、your_server_ip为服务器IP):
ssh -L 5901:localhost:5901 username@your_server_ip
然后使用VNC客户端连接本地127.0.0.1:5901,即可通过SSH隧道安全访问远程VNC服务。