fastrevmd-lab/fwconfigsantizer
GitHub: fastrevmd-lab/fwconfigsantizer
一款基于浏览器纯客户端运行的防火墙配置脱敏工具,通过将敏感信息替换为安全占位符,使配置文件可安全分享。
Stars: 1 | Forks: 0
fwconfigsanitizer
防火墙配置清理工具 — 基于浏览器,100% 客户端运行
mechub 项目 — 自主可控的网络安全自动化
一款便携的、基于浏览器的工具,通过将敏感和可识别信息替换为安全的占位符来清理防火墙配置。100% 客户端运行——数据不会离开您的设备。


## 使用方法
1. 下载 `index.html`
2. 在任何现代浏览器中打开它
3. 接受风险免责声明
4. 粘贴、上传或拖放防火墙配置
5. 根据需要开启/关闭清理类别
6. 可选择设置用于确定性输出的**盐值 (salt)** 和/或添加**自定义敏感词**
7. 点击 **Sanitize**
8. 查看**验证警告**,了解是否有任何可能遗漏的项目
9. 使用 **Diff** 视图并排比较原始配置与清理后的配置
10. 下载**清理后的配置**(可安全分享)和**映射文件**(用于日后恢复)
如需处理多个文件,请使用 **Batch**(批处理)标签页一次性清理多个配置,并下载一个 zip 压缩包。
## 清理内容
在执行清理之前,可以通过复选框单独启用或禁用每个类别。
| 类别 | 替换内容 |
|----------|-------------|
| 公网 IP | RFC 5737 文档 IP (`192.0.2.x`, `198.51.100.x`, `203.0.113.x`) |
| 私有 IP | 保留前缀的 `10.x.x.x` 地址 |
| IPv6 地址 | RFC 3849 文档前缀 (`2001:db8::`) |
| 区域名称 | `zone-0`, `zone-1`, ... |
| 对象 / 组名称 | `obj-0`, `obj-1`, ... |
| 密码和哈希 | `REDACTED_HASH_N` |
| 预共享密钥 / API 密钥 | `REDACTED_KEY_N` |
| 用户名 | `user-0`, `user-1`, ... |
| SNMP 社区字符串 | `REDACTED_COMMUNITY_N` |
| 证书 | `REDACTED_CERT_N` |
| BGP AS 编号 | `REDACTED_BGP_N` |
| 服务器主机名 | `host-N.example.net` |
| 设备主机名 | `sanitized-fw` |
| 域名 (FQDN) | `example-N.net` |
| 电子邮箱 | `user-N@example.net` |
| URL | 域名替换为 `example-N.net`,保留路径 |
| 接口名称(可选启用) | `intf-0`, `intf-1`, ... (保留 port1, ge-0/0/0 等结构性名称) |
| 描述和注释 | `SANITIZED_DESC_N` |
| 自定义词语 | `REDACTED_WORD_N` |
CIDR 前缀长度(例如 `/24`, `/32`)在替换其 IP 地址时会被保留。
## 功能
- **保留前缀的 IP 匿名化** — 共享同一子网的 IP 在匿名化后仍保留在同一子网(例如,同一 /24 上的两台主机仍保留在同一 /24 上)
- **确定性盐值 (salt)** — 提供可选的盐值,以确保相同的配置始终生成相同的输出;支持对 HA(高可用)集群分开处理并获得兼容的结果
- **自定义敏感词列表** — 添加逗号分隔的特定组织术语(公司名称、城市代码、项目名称)以进行全局脱敏
- **批处理模式** — 使用相同的盐值和选项一次性清理多个配置文件;下载包含所有已清理文件和组合映射的 zip 压缩包。自动生成的盐值会显示在统计栏中,方便记录
- **接口名称清理** — 可选类别,用于替换泄露拓扑的接口名称 (WAN-MPLS-NYC),同时保留结构性名称 (port1, ge-0/0/0)
- **拖放上传** — 直接将配置文件拖放到文本区域
- **URL 清理** — HTTP/HTTPS/LDAP/FTP URL 将替换其域名,同时保留路径和端口
- **选择性清理** — 通过复选框开启/关闭各个类别
- **保存/加载预设** — 将您的复选框设置、盐值和自定义词保存到 localStorage 以便重用
- **Diff 视图** — 并排比较原始配置与清理后配置,并高亮显示更改的行
- **验证警告** — 清理后扫描会标记潜在的遗漏项(IP、电子邮件、FQDN、URL、密码哈希、IPv6)
- **以 CSV 复制映射** — 以电子表格友好的格式导出映射表
- **配置大小指示器** — 显示行数/大小,如果配置看起来不完整会发出警告
- **浅色/深色模式** — 在右上角切换,偏好设置会被保留
- **移动端响应式** — 适用于平板电脑和手机
- **恢复** — 上传清理后的配置和映射文件以重建原始配置
## 支持的厂商
系统会自动检测厂商,并仅应用相关的清理规则,从而减少误报并提高性能。对于无法识别的配置,将在尽力而为的模式下运行所有规则。
- Cisco ASA / FTD
- Fortinet FortiGate (FortiOS)
- Palo Alto PAN-OS / Panorama
- Juniper SRX (Junos)
- Check Point Gaia (R80.x / R81.x) — dbedit (objects_5_0.C), Gaia clish, SmartConsole export
## 恢复配置
1. 切换到 **Restore** 标签页
2. 上传清理后的配置及其 `.mapping.json` 文件
3. 点击 **Restore Original Config**
4. 下载恢复后的配置
## 映射文件
映射文件是一个 JSON 文档,包含清理期间进行的每一项替换。请妥善保管——它包含用于逆向恢复清理的原始敏感值。如果使用了盐值,它会记录在映射文件的元数据中。
## 许可证与出处
### 商标免责声明
本代码库是一个独立的、社区驱动的项目。它不隶属于 Juniper Networks、Palo Alto Networks、Fortinet、Cisco 或 Check Point Software Technologies,也未获得其认可、赞助或支持。“Juniper”、“Junos”、“SRX”、“PAN-OS”、“Palo Alto Networks”、“FortiGate”、“FortiOS”、“Fortinet”、“Cisco” 和 “Check Point” 等术语是其各自所有者的商标,此处使用它们仅用于描述本软件与之互操作的内容。如有关于这些产品的支持和许可问题,请直接联系相应的供应商。
### 许可证
根据 [MIT](LICENSE) 授权。
a mechub project · deterministic decides · the model explains · a human approves
github.com/fastrevmd-lab
标签:Docker 部署, 前端工具, 后端开发, 多模态安全, 数据可视化, 网络安全, 网络调试, 网络运维, 自动化, 防火墙配置, 隐私保护, 隐私脱敏