外部设备无法连接统信UOS上运行的服务,主因是防火墙默认拦截入站流量;须先启用ufw或firewalld,再开放端口(如80/tcp、3306/tcp)或限制IP(如允许192.168.5.20访问3389),并通过status命令验证规则生效。

外部设备无法连接统信UOS上运行的Web服务、数据库或远程桌面,通常是因为防火墙默认拦截了入站流量;必须先启用防火墙,再按需开放端口或限制IP访问,否则所有对外服务都将不可达。
用ufw命令行工具快速启用并开放端口
这是桌面版最常用的方法,适合日常防护和快速调试,无需记忆复杂语法,规则自动持久化。
第一步:以管理员身份打开终端(Ctrl+Alt+T)。
第二步:执行sudo apt install -y ufw安装ufw(若已安装则跳过)。
第三步:运行sudo ufw enable启用防火墙并设为开机自启;这一步必须执行,否则后续规则不生效。
第四步:开放HTTP端口——执行sudo ufw allow 80/tcp;若同时需要HTTPS,再执行sudo ufw allow 443/tcp。
第五步:验证规则是否写入——运行sudo ufw status numbered,确认列表中出现对应编号条目;【若显示Status: inactive,请勿跳过第三步】。
用firewall-cmd配置firewalld区域化规则
适用于UOS Server或需精细控制策略的场景,规则绑定到public等区域,支持富规则和动态重载。
方法一:启动并确认服务状态
执行sudo systemctl start firewalld启动服务 → 再执行sudo systemctl enable firewalld设为开机自启 → 最后运行sudo firewall-cmd --state,返回running才算成功。
方法二:向public区域永久添加端口
执行sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent开放MySQL端口;【务必加上--permanent参数,否则重启后规则丢失】。
执行sudo firewall-cmd --reload使新规则载入内核;这一步不可省略,否则规则仅存在于配置文件中,未生效。
方法三:添加富规则限制源IP
允许特定IP访问RDP端口:执行sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.5.20" port port="3389" protocol="tcp" accept' --permanent。
这条命令会精确匹配IPv4流量,仅放行来自192.168.5.20的TCP 3389连接,其他任何来源均被拒绝。
通过图形化安全中心一键开启基础防护
适合不熟悉命令行的用户,操作直观,状态实时可见,底层调用的是ufw接口。
点击任务栏启动器 → 在搜索框输入“安全中心”并打开应用 → 左侧导航栏选择“网络安全”或“防火墙防护”。
若右侧显示“防火墙已关闭”,直接点击开启按钮;部分版本会弹出权限框,需输入当前用户密码完成提权。
开启成功后,状态标签变为“已启用”,并显示当前防护级别(如“标准防护”);此时默认策略为拒绝入站、允许出站。
按需设置IP白名单式访问控制
当SSH、MySQL等敏感服务需对外提供时,不能简单开放端口,必须限定可信来源,否则极易被暴力破解。
① 允许单个IP访问SSH端口:执行sudo ufw allow from 10.1.2.3 to any port 22。
② 允许整个子网访问数据库:执行sudo ufw allow from 172.16.0.0/16 to any port 3306 proto tcp。
③ 立即拒绝恶意IP:执行sudo ufw deny from 203.0.113.99;该规则优先级高于allow,且无需指定端口或协议。
④ 查看带编号规则以便管理:运行sudo ufw status numbered,后续删除某条规则时直接用编号操作,例如sudo ufw delete 3。


















