# FPA **Repository Path**: viitii/fpa ## Basic Information - **Project Name**: FPA - **Description**: Firewall Policy Assistant​ - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-11 - **Last Updated**: 2025-10-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 端口安全管理工具 一款基于Windows系统的端口安全管理工具,用于检测端口状态、分析访问范围、管理防火墙策略。 ## 功能特性 - **端口状态检测**:扫描系统端口,检测监听状态和连接信息 - **访问范围分析**:分析端口访问范围,识别潜在安全风险 - **防火墙策略管理**:生成、应用和管理防火墙规则 - **多端口策略支持**:支持单个端口、多个不连续端口、连续端口范围及混合端口的策略管理 - **智能端口格式化**:自动将连续端口合并为范围表示,优化端口字符串提高可读性 - **备份与恢复**:备份和恢复防火墙策略配置 - **图形化界面**:直观易用的图形用户界面 - **导入导出**:支持扫描结果和策略的导入导出 ## 系统要求 - Windows 10/11 - Python 3.8+ - 管理员权限(部分功能需要) ## 安装与运行 1. 克隆或下载项目到本地 2. 创建虚拟环境: ``` python -m venv venv ``` 3. 激活虚拟环境: ``` venv\Scripts\activate ``` 4. 安装依赖: ``` pip install -r requirements.txt ``` 5. 运行程序: ``` python run.py ``` ## 使用说明 ### 端口状态检测 1. 在"端口状态检测"选项卡中,输入要扫描的端口范围 2. 点击"开始扫描"按钮进行端口扫描 3. 查看扫描结果,包括端口状态、进程信息等 4. 可以导出扫描结果或对特定端口进行进一步分析 ### 访问范围分析 1. 在"访问范围分析"选项卡中,选择要分析的端口 2. 点击"开始分析"按钮进行访问范围分析 3. 查看分析结果,包括本地IP、活动连接、网络段分析等 4. 查看安全建议,了解潜在风险 ### 防火墙策略管理 1. 在"防火墙策略管理"选项卡中,配置策略参数 2. 点击"生成策略"按钮生成防火墙规则 3. 点击"应用策略"按钮将规则应用到系统防火墙 4. 可以查看现有策略、删除策略或导出策略列表 ### 多端口策略管理 1. 在"防火墙策略管理"选项卡中,可以输入多种端口格式: - 单个端口:`80` - 多个不连续端口:`80,443,8080` - 连续端口范围:`8000-8009` - 混合端口:`80,443,8000-8002,9090` 2. 选择协议(TCP/UDP)、方向(入站/出站)和IP范围等参数 3. 点击"生成策略"按钮生成防火墙规则 4. 点击"应用策略"按钮将规则应用到系统防火墙 ### 备份与恢复 1. 在"备份与恢复"选项卡中,创建防火墙策略备份 2. 可以查看备份历史,恢复之前的备份 3. 支持恢复前自动备份,防止配置丢失 ## 项目结构 ``` fpa/ ├── docs/ # 文档目录 │ ├── 多端口策略使用指南.md │ ├── 多端口策略实现总结.md │ ├── 策略名称格式优化说明.md │ ├── 防火墙策略管理模块重构总结.md │ └── 需求文档1.1.md ├── src/ # 源代码目录 │ ├── core/ # 核心功能模块 │ │ ├── __init__.py │ │ ├── logger.py # 日志模块 │ │ ├── privilege.py # 权限检查模块 │ │ ├── port_scanner.py # 端口扫描模块 │ │ ├── access_analyzer.py # 访问分析模块 │ │ └── firewall_manager.py # 防火墙管理模块 │ └── ui/ # UI模块 │ ├── __init__.py │ ├── main_window.py # 主窗口 │ ├── port_scan_tab.py # 端口扫描选项卡 │ ├── access_analysis_tab.py # 访问分析选项卡 │ ├── firewall_tab.py # 防火墙策略选项卡 │ └── backup_tab.py # 备份恢复选项卡 ├── logs/ # 日志目录(运行时创建) ├── backups/ # 备份目录(运行时创建) ├── main.py # 主程序入口 ├── run.py # 运行脚本 ├── requirements.txt # 依赖列表 └── README.md # 项目说明 ``` ## 注意事项 1. 本工具需要在Windows系统上运行 2. 部分功能需要管理员权限 3. 防火墙策略操作会影响系统安全,请谨慎使用 4. 建议在修改防火墙策略前先创建备份 ## 打包和发布 ### 使用预编译版本(推荐) 1. 从Gitee的Release页面下载最新的预编译版本 2. 解压下载的压缩包 3. 直接运行 `fpa.exe` 即可启动程序 4. 部分功能需要以管理员身份运行 ### 从源码打包可执行文件 1. 确保已安装PyInstaller: ``` pip install PyInstaller ``` 2. 运行打包脚本: ``` build.bat ``` 3. 生成的可执行文件位于 `dist/` 目录下 ### 发布到Gitee 请参考 `docs/Gitee发布说明.md` 文件了解详细的发布流程和注意事项。 ## 许可证 本项目采用MIT许可证,详见LICENSE文件。