Ubuntu下TigerVNC防火墙规则配置指南
TigerVNC作为Ubuntu系统上的常用远程桌面工具,默认通过TCP端口与客户端通信。为确保远程连接的安全性,需通过防火墙(如Ubuntu默认的UFW)配置规则,允许合法流量通过。以下是详细操作步骤:
TigerVNC的端口号遵循“5900+显示编号”的规则(显示编号由vncserver :X命令中的:X指定)。例如:
:1 → 端口5901(5900+1);:2 → 端口5902(5900+2);vncserver :X命令指定显示编号,或通过netstat -tulnp | grep vnc命令查看当前使用的端口。UFW(Uncomplicated Firewall)是Ubuntu默认的防火墙管理工具,操作简单且功能强大。若系统未安装UFW,可通过以下命令安装并启用:
sudo apt update
sudo apt install ufw # 安装UFW
sudo ufw enable # 启用UFW(首次启用会提示是否允许SSH连接,输入y确认)
启用后,UFW默认拒绝所有传入连接,仅允许已明确放行的流量。
根据VNC使用的端口号,使用ufw allow命令放行对应端口。例如,若VNC使用显示编号:1(端口5901),则运行:
sudo ufw allow 5901/tcp # 允许TCP协议的5901端口流量(VNC默认使用TCP)
若需允许多个VNC会话(如:1、:2),需为每个端口重复上述命令。
通过以下命令查看UFW的当前规则,确认TigerVNC端口已被允许:
sudo ufw status # 查看防火墙状态及规则
输出结果中应包含类似内容(以端口5901为例):
Status: active
To Action From
-- ------ ----
5901/tcp ALLOW Anywhere
5901/tcp (v6) ALLOW Anywhere (v6)
若规则未显示,可尝试重新加载UFW:
sudo ufw reload # 重新加载UFW以应用更改
若仅需允许特定IP地址访问VNC服务,可将ALLOW规则修改为指定IP。例如,仅允许IP192.168.1.100访问5901端口:
sudo ufw allow from 192.168.1.100 to any port 5901/tcp
此设置可有效减少非法访问风险。
ssh -L 5901:localhost:5901 username@server_ip命令),将VNC流量加密传输,避免直接暴露端口。