mahdialemi/NexusMap

GitHub: mahdialemi/NexusMap

NexusMap 是一个基于 Go 的 Nmap Web GUI,通过浏览器可视化地组织、执行和管理网络扫描任务,并支持结果合并、编辑与多格式导出。

Stars: 0 | Forks: 0

NexusMap Logo # NexusMap **一个现代化的 Nmap Web GUI** — 在任意浏览器中运行、组织和可视化网络扫描。 [下载](https://github.com/mahdialemi/NexusMap/releases)
## 快速开始 1. 下载[最新版本](https://github.com/mahdialemi/NexusMap/releases) 2. 运行 `nexusmap`(或在 Linux/macOS 上运行 `./nexusmap`) 3. 打开 `http://127.0.0.1:9090` — 使用控制台输出的管理员密码 ### 从源码构建 ``` git clone https://github.com/mahdialemi/NexusMap.git cd NexusMap go build -ldflags="-s -w" -o nexusmap . ./nexusmap ``` ### 环境要求 - **Nmap 7.0+** — 必须在系统 PATH 中 - **Go 1.23+** — 仅在从源码构建时需要 ### CLI 选项 ``` nexusmap -port 9090 -bind 127.0.0.1 -db ./scanner.db -admin-password mypass ``` | 参数 | 默认值 | 描述 | |------|---------|-------------| | `-port` | `9090` | HTTP 端口 | | `-bind` | `0.0.0.0` | 绑定地址 | | `-db` | `./scanner.db` | SQLite 数据库路径 | | `-admin-password` | *(随机)* | 设置初始管理员密码 | | `-version` | — | 输出版本并退出 | ## 项目结构 ``` nexusmap # Single binary (all frontend files embedded) ├── scans/ # Nmap output files (auto-created) ├── scanner.db # SQLite database (auto-created) │ ├── main.go # Entry point, HTTP server, embedded web files ├── internal/ │ ├── auth/ # Auth, sessions, CSRF, rate limiting │ ├── db/ # SQLite models and queries │ ├── export/ # Excel, JSON, CSV, TXT exporters │ ├── handlers/ # HTTP handlers (scans, projects, etc.) │ └── nmap/ # Nmap runner, parse XML/gnmap/CSV ├── web/ │ ├── css/ # Styles (dark/light theme via CSS vars) │ ├── js/ # Vanilla JS frontend logic │ ├── pages/ # HTML pages (served from embedded FS) │ └── icons/ # SVG sprite sheet └── data/ # Default DB location ``` | 层级 | 技术 | |---|---| | 后端 | Go, `net/http`, `modernc.org/sqlite` | | 前端 | Vanilla JS, CSS 自定义属性 | | 数据库 | SQLite (纯 Go, 零 CGO) | | 扫描 | Nmap (外部二进制文件) | | 实时通信 | Server-Sent Events (SSE) | | 导出 | Excel (excelize), JSON, CSV, TXT | | 安全 | bcrypt, CSRF, 速率限制, session cookies | ## 功能 - **40+ 扫描配置** — 主机发现、TCP/UDP、OS 检测、服务版本检测、规避 - **自定义 Nmap 参数** — 通过内置安全验证覆盖预设配置 - **实时进度** — 实时 SSE 更新 - **调度任务** — 单次执行或基于依赖的触发器 - **可编辑结果** — 双击单元格、批量编辑、更改审计、撤销 - **合并视图** — 合并所有扫描、去重、过滤、标记端口 - **实时主机发现** — ARP/ICMP、状态跟踪、Ping 检查 - **NSE 脚本** — 46 个内置配置,从 UI 运行 - **导入** — Nmap XML, Gnamp, CSV 或完整的数据库合并 - **导出** — Excel, JSON, CSV, TXT - **用户管理** — 角色、活动日志、密码策略 - **管理员工具** — 数据库备份、恢复、清理、恢复出厂设置 ## 许可证 MIT — 查看 [LICENSE](LICENSE)
**NexusMap** v0.9.1 · 由 [Mahdi Alemi](https://github.com/mahdialemi) 制作
标签:CTI, Go语言, Maven构建, Nmap图形界面, SQLite, 云存储安全, 占用监测, 插件系统, 日志审计, 程序破解, 网络发现, 网络扫描, 自定义脚本, 资产管理