银河麒麟系统安全中心防火墙开关灰色是因firewalld未安装或禁用,需先用systemctl、ufw、kylin-firewall命令检测后端,再安装firewalld或启用服务,最后通过firewall-cmd/ufw/kylin-firewall配置端口规则。

银河麒麟系统中安全中心的防火墙开关显示为灰色、无法点击,或执行命令提示“command not found”“No such file or directory”,说明图形界面与命令行后端存在脱节或关键服务缺失,必须绕过失效界面直接干预底层服务状态与配置。
先确认防火墙服务是否真实存在
打开终端,逐条执行以下命令判断当前系统实际安装了哪种防火墙后端:
检查 firewalld 是否已安装并注册为 systemd 服务:【sudo systemctl list-unit-files | grep firewalld】。若无输出,说明 firewalld 未安装;若有输出但状态为 disabled 或 masked,则需手动安装或解除屏蔽。
运行 【sudo ufw status verbose】 查看 ufw 是否可用。若提示 “ufw: command not found”,说明该工具未预装,不可用此路径。
执行 【sudo kylin-firewall -g】。若返回 “command not found”,则 kylin-firewall 组件缺失,不能走 KYSEC 路径。
修复图形界面灰色按钮的根本原因
安全中心防火墙开关变灰,90% 是因为 firewalld 服务未安装或被禁用,而安全中心只检测 firewalld 状态,不兼容 ufw 或 kylin-firewall 的独立运行。
若上一步确认 firewalld 未安装:需离线下载 firewalld 及其全部依赖包(通常含 firewall-config、python3-firewall、libnetfilter_* 等共 12–16 个 rpm),使用 sudo rpm -ivh *.rpm 顺序安装;【注意:必须按依赖顺序安装,否则 service 文件不会注册到 systemd】。
若 firewalld 已安装但被 disable 或 masked:执行 【sudo systemctl unmask firewalld && sudo systemctl enable firewalld】,再启动服务:【sudo systemctl start firewalld】。
完成上述操作后,重启安全中心应用(关闭再重开),防火墙开关将恢复可点击状态。
跳过图形界面,直接配置端口规则
方法一:firewalld 后端(推荐,V10 桌面版及服务器版默认)
① 确保 firewalld 正在运行:【sudo systemctl start firewalld】
② 永久开放 TCP 53317 端口(如 localsend 所需):【sudo firewall-cmd --permanent --add-port=53317/tcp】
③ 永久开放 UDP 53317 端口:【sudo firewall-cmd --permanent --add-port=53317/udp】
④ 重载规则使生效:【sudo firewall-cmd --reload】
⑤ 验证是否写入:【sudo firewall-cmd --list-ports】 应显示 53317/tcp 53317/udp
方法二:ufw 后端(仅限 V10 SP1+ 部分桌面镜像)
若 ufw 可用且处于 inactive 状态,直接启用并放行端口:【sudo ufw enable && sudo ufw allow 53317】。ufw 默认同时开放 TCP 和 UDP,无需分开指定。
方法三:kylin-firewall 命令(适配 KYSEC 审计环境)
执行 【sudo kylin-firewall --add-rule port=53317 proto=tcp action=allow】,再执行 【sudo kylin-firewall --add-rule port=53317 proto=udp action=allow】,最后运行 【sudo kylin-firewall --apply】 生效。











