Thebul500/netmap
GitHub: Thebul500/netmap
基于 Python 和 FastAPI 的网络扫描器,提供异步 TCP 端口检测、设备发现和 REST API,将扫描结果持久化到 PostgreSQL。
Stars: 0 | Forks: 0
# netmap
具备异步 TCP 端口检测、设备发现和 REST API 功能的网络扫描器。扫描子网,识别开放端口,执行反向 DNS 查找,并将结果存储在 PostgreSQL 中。
[](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, 子网扫描, 安全防御评估, 密码管理, 开源安全工具, 异步扫描, 插件系统, 数据库存储, 无后门, 测试用例, 端口检测, 网络安全, 网络扫描器, 网络测绘, 网络空间测绘, 设备发现, 请求拦截, 资产管理, 逆向工具, 逆向工程平台, 隐私保护