工具介绍
IP_fengjin 是一款专为网络安全管理员设计的图形化工具,旨在简化在防火墙设备上批量封禁 IP 地址的操作流程。本工具通过 SSH 连接到防火墙,自动化地将大量 IP 地址添加至指定的地址簿,并创建或更新相应的安全策略,极大地提高了应急响应和日常维护的效率。
该工具的核心特性是智能化管理:当目标地址簿的容量达到上限(代码中设定为约1670个)时,它会自动创建新的地址簿和匹配的安全策略,并确保新策略在防火墙规则中的顺序正确,从而实现无缝扩容。

功能特性
- 图形化用户界面:基于 customtkinter构建,界面简洁直观,易于上手。
- SSH 自动连接:首次使用时引导用户配置连接信息,后续自动读取配置进行连接与重连。
- 批量导入 IP:支持从 .txt文件一键导入需要封禁的 IP 列表。
- 智能地址簿管理:自动检测现有地址簿容量,当IP数量超出阈值时,会自动创建新的地址簿(例如,从 2025HW1到2025HW2)。
- 自动化策略创建与排序:在创建新地址簿的同时,会自动生成一条对应的安全策略(例如 2025封堵策略2),并将其移动到前一条策略之后,确保封禁逻辑的连续性。
- 实时状态统计:可随时刷新并查看与关键字相关的地址簿和策略的当前状态,包括 IP 数量、策略 ID 等。
- 详细操作日志:所有操作,包括 SSH 连接、命令执行、IP 添加结果等,都会实时显示在日志窗口中,便于追踪和排错。
- 失败重试机制:对于在封禁过程中因设备锁定或其他原因失败的 IP,会自动记录到 data.txt文件中,并在下一轮封禁中自动重试,确保所有 IP 都被成功处理。
运行环境
- Python 3: 脚本需要 Python 3.x 环境运行。
- 必需的 Python 库:
- 
customtkinter: 用于构建图形用户界面。
- 
paramiko: 用于处理 SSH 连接和命令执行。
首次使用与配置
- 安装依赖: 打开命令行终端,使用 pip 安装所需的库。
pip install customtkinter paramiko- 初次运行: 直接运行 ip_fengjin.py脚本。由于是首次运行,程序会因为找不到config.txt配置文件而弹出一个 “首次配置” 对话框。
- 填写连接信息: 在弹出的对话框中,依次输入防火墙设备的:
- 主机IP: 防火墙的管理地址。
- 端口: SSH 端口,默认为 22。
- 用户名: 拥有配置权限的 SSH 登录用户名。
- 密码: 对应的密码。
- 保存与连接: 点击 “保存并连接” 按钮。程序会将连接信息保存到与脚本同目录的 config.txt文件中,并立即尝试建立 SSH 连接。此后启动程序将自动读取该文件进行连接,无需重复输入。
工具下载
https://github.com/junyibb/ip-fengjin-tool                
 
 
                     
            
        













 
                    

 
                 
                    