📘 文档目的与功能
在日常工作中,iptables 命令行操作不够直观,规则变更易遗忘备份,安全风险也难以快速识别。一些成熟的 AI 运维框架虽功能强大,但对重要业务而言,引入额外运行时环境会增加不必要的依赖和资源消耗,token 用量也不可控。
本文档记录了一套轻量级方案——iptables 管理脚本 + AI 辅助分析:
- 主脚本提供规则的查看、新增、删除、备份、回滚功能,操作直观,自动持久化
- AI 脚本按需调用,进行安全评估和优化建议,不常驻运行,无额外负担
核心思路:该自动化的交给脚本,该判断的交给 AI,兼顾效率与安全。
一、环境准备
1. 系统要求
- 操作系统:CentOS 7 / Ubuntu 22.04 LTS / Ubuntu 24.04 LTS
- 权限:需要 root 权限运行
- 网络:能正常访问外网(AI 分析需要调用 API)
- AI Key:可选,准备好七牛 AI API Key(https://platform.qnaigc.com)
2. 基础依赖安装
# Ubuntu 系统
apt install iptables iptables-persistent -y
AI 分析依赖(仅 Ubuntu,可选)
# apt install python3 python3-requests -y
# CentOS 7 系统
yum install iptables-services -y
二、脚本下载与安装
git clone https://gitee.com/cncsrf/firewall-manager.git
cd firewall-manager && bash firewall-manager.sh
三、主管理脚本功能
1. 主菜单

2. 查看规则
选择 1 查看当前所有防火墙规则,自动显示规则说明和安全检查结果。
=== 安全检查 ===
正在进行安全检查(可能需要几秒,请耐心等待)...
⚠️ 注意:SSH 端口 22 对公网开放,建议限制来源IP或修改端口
可使用功能2添加来源IP限制规则
⚠️ 注意:没有发现默认拒绝规则(DROP/REJECT all)
建议添加一条兜底规则: iptables -A INPUT -j DROP
发现 2 个优化建议
3. 新增规则
选择 2 新增规则,支持 TCP/UDP/TCP+UDP,可限制来源IP:
当前规则列表:
ID 目标 协议/端口 来源IP
--------------------------------------------------------
1 ACCEPT tcp/22 0.0.0.0/0
2 ACCEPT tcp/80 0.0.0.0/0
3 ACCEPT tcp/443 0.0.0.0/0
请输入要删除的规则编号 (输入0取消): 2
即将删除规则 #2:
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
确认删除?(y/n): y
✓ 规则已删除
4. 备份管理
选择 4 进入备份管理子菜单:
1. 查看备份列表
2. 手动备份当前规则
3. 回滚到指定备份
4. 返回主菜单
四、AI 智能安全分析
1. 功能介绍
AI 分析脚本提供以下功能:
- 自动获取当前 iptables 防火墙规则
- 解析规则并进行基础安全评分(0-100分)
- 检测常见安全风险(公网端口、数据库端口暴露等)
- 调用 AI 深度分析,给出优化建议
运行后显示:
==================================================
🛡️ 防火墙规则 AI 分析工具 v5
==================================================
📖 功能介绍
• 自动获取当前 iptables 防火墙规则
• 解析规则并进行基础安全评分
• 检测常见安全风险(公网端口、默认策略等)
• 调用 AI 智能分析,给出优化建议
2. API Key 配置(三种方式)
方式一:环境变量(推荐)
export QINIU_API_KEY="your-api-key"
python3 fw-ai-analyzer.py
方式二:配置文件
首次运行脚本时会自动提示配置,API Key 保存在 ~/.fw-ai-config(权限 600)。
方式三:交互配置
直接运行脚本,按提示输入 API Key 即可。