Thebul500/netmap

GitHub: Thebul500/netmap

基于 Python 和 FastAPI 的网络扫描器,提供异步 TCP 端口检测、设备发现和 REST API,将扫描结果持久化到 PostgreSQL。

Stars: 0 | Forks: 0

# netmap 具备异步 TCP 端口检测、设备发现和 REST API 功能的网络扫描器。扫描子网,识别开放端口,执行反向 DNS 查找,并将结果存储在 PostgreSQL 中。 [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/9251472a9c111734.svg)](https://github.com/Thebul500/netmap/actions) ## 快速开始 ``` docker compose up -d curl http://localhost:8000/health ``` ## 安装(开发模式) ``` pip install -e .[dev] uvicorn netmap.app:app --reload ``` ## 使用方法 ``` # 使用 Docker Compose 启动 (推荐) docker compose up -d # 或直接运行 uvicorn netmap.app:app --host 0.0.0.0 --port 8000 ``` ## API 端点 | Method | Path | Description | |--------|------|-------------| | GET | `/health` | 健康检查 | | GET | `/ready` | 就绪探针 | | POST | `/auth/register` | 注册新用户 | | POST | `/auth/login` | 登录并获取 JWT token | | POST | `/scans/` | 创建并启动新扫描 | | GET | `/scans/` | 列出当前用户的所有扫描 | | GET | `/scans/{scan_id}` | 获取扫描详情及发现的设备 | | DELETE | `/scans/{scan_id}` | 删除扫描 | | POST | `/devices/` | 手动创建设备 | | GET | `/devices/` | 列出设备(分页、可过滤) | | GET | `/devices/{device_id}` | 获取单个设备 | | PUT | `/devices/{device_id}` | 更新设备 | | DELETE | `/devices/{device_id}` | 删除设备 | ## 配置 环境变量(前缀 `NETMAP_`): | Variable | Default | Description | |----------|---------|-------------| | `DATABASE_URL` | `postgresql+asyncpg://...` | 数据库连接字符串 | | `SECRET_KEY` | *(auto-generated)* | JWT 签名密钥 | | `DEBUG` | `false` | 启用调试模式 |
标签:AV绕过, Docker, FastAPI, JWT认证, PostgreSQL, Python, REST API, TCP探测, Uvicorn, 占用监测, 反向DNS, 子网扫描, 安全防御评估, 密码管理, 开源安全工具, 异步扫描, 插件系统, 数据库存储, 无后门, 测试用例, 端口检测, 网络安全, 网络扫描器, 网络测绘, 网络空间测绘, 设备发现, 请求拦截, 资产管理, 逆向工具, 逆向工程平台, 隐私保护