Lineup-NOAH/kangalis-core
GitHub: Lineup-NOAH/kangalis-core
Kangalis 是一款 100% 本地部署的开源内部网络漏洞扫描与管理平台,通过结合可利用性信号实现风险优先级排序。
Stars: 0 | Forks: 0
# Kangalis
[](https://github.com/Lineup-NOAH/kangalis-core/actions/workflows/ci.yml)
[]
[]
[]
一个轻量级的 OpenVAS/Nessus 替代方案:它能在您的内部网络中发现主机和服务,将它们与已知漏洞(CVEs)进行匹配,并利用**可利用性信号**(Exploit-DB、CISA KEV、EPSS)对其进行丰富,从而提供**风险优先级排序**。
它还可以通过 **MCP** 与 Claude 进行交互。
--password --role admin
# 从面板 (Settings → Authorized Scope) 或通过 docs/INSTALL.md §3.3 定义范围。
```
然后打开控制面板:**http://localhost:8000/login**
### 重置 / 彻底重装
如果安装中断,或者您想更改数据库用户/密码,**旧的数据库卷会与新的 `.env` 产生冲突**(`migrate` → `password authentication failed for user ...`)。PostgreSQL 仅在首次启动时固化用户/密码;删除文件夹或 Docker **并不会移除该卷**。使用以下一条命令进行彻底重置:
```
# Windows
powershell -ExecutionPolicy Bypass -File reset.ps1
# Linux / macOS
bash reset.sh
```
### 本地 AI(可选,本地部署,零流量外发)
AI 是完全本地的(在 CPU 上运行);它仅提供建议/草稿,并且最终动作始终由人类触发。**推荐方案 —— Ollama**(官方 `ollama/ollama` 镜像;模型在运行时被拉取):
```
docker compose --profile ai up -d ollama # Ollama engine (Docker Hub, public)
docker compose exec ollama ollama pull qwen3:8b # download the model (~5 GB, one-time)
```
然后在控制面板的 **Plugins → AI** 下:endpoint 填入 `http://ollama:11434/v1`,模型填入 `qwen3:8b`,点击“Test connection” → 变绿即成功。
- 📘 详细的安装 / 手动步骤 / 生产环境部署:[`docs/INSTALL.md`](docs/INSTALL.md)
- 🧩 可选功能(本地 AI、MCP、插件):[`docs/PLUGINS.md`](docs/PLUGINS.md)
## 技术栈
| 层级 | 选择 |
|---|---|
| 语言 / 打包 | Python 3.12+ · uv |
| 后端 | FastAPI |
| 数据库 | PostgreSQL + SQLAlchemy + Alembic |
| 任务队列 | Celery + Redis |
| 前端 | Jinja2 + HTMX + Tailwind |
| 扫描 | nmap, httpx |
| 部署 | Docker + docker-compose |
## 开发环境
要求:[uv](https://docs.astral.sh/uv/)(uv 会自行下载 Python)。
```
# 安装依赖项 (包括 Python 3.12)
uv sync
# 运行测试
uv run pytest
# Lint & 类型检查
uv run ruff check .
uv run mypy
# (可选) 安装 pre-commit hooks
uv run pre-commit install
```
## 项目结构
```
src/cybersectool/
├── core/ # shared business logic (service layer) + scope guard
├── scanners/ # scan modules (network, web, sca, hardening)
├── intel/ # vulnerability/exploit data sources (NVD, OSV, EDB, KEV, EPSS)
├── api/ # FastAPI routers
├── web/ # dashboard (Jinja2 + HTMX)
├── tasks/ # Celery tasks
└── mcp/ # MCP server
```
## 贡献 / 工作流
Fork 并向 **main** 分支提交 PR。遵循 Conventional Commits 规范。每个 PR 都必须通过 `ruff` + `mypy` + `pytest` 检查。
详情:[CONTRIBUTING.md](CONTRIBUTING.md)
## 许可证
[MIT](LICENSE) © 2026 Lineup-NOAH
- 第三方依赖项许可证:[THIRD-PARTY-NOTICES.md](THIRD-PARTY-NOTICES.md)
- 安全与负责任/授权使用:[SECURITY.md](SECURITY.md)
- **免责声明与使用条款:** [DISCLAIMER.md](DISCLAIMER.md)
标签:AI风险缓解, MCP, Python, 搜索引擎查询, 无后门, 智能体, 测试用例, 网络安全, 请求拦截, 逆向工具, 隐私保护