aman-sharma-dev/netsentryx

GitHub: aman-sharma-dev/netsentryx

一个基于 Python 和 FastAPI 的事件驱动型实时网络监控与威胁检测系统,提供流聚合分析、规则告警引擎和 WebSocket 驱动的现代化实时仪表板。

Stars: 0 | Forks: 0

# NetSentryx PRO 🛡️ **生产级实时网络可观测性与威胁检测** NetSentryx PRO 是一个使用 Python 构建的高性能、事件驱动型网络监控系统。它通过现代化的 SaaS 风格仪表板,提供网络流量的实时可见性、异常检测和结构化告警。 ⚠️ **状态:v0.1-alpha(积极开发中)** 本项目目前可用,但仍在不断演进中。请预期会有破坏性变更和持续的架构改进。 ## 🚀 核心特性 - ⚡ **事件驱动架构** 内部轻量级事件总线,实现解耦处理。 - 📡 **实时仪表板** 通过 WebSockets 对告警、流和日志进行实时更新。 - 🌊 **基于流的网络分析** 将数据包聚合成流,并提供行为指标。 - 🧠 **基于规则的检测引擎** 检测以下异常情况: - 流量激增 - 扫描行为 - 泛洪攻击 - 🪵 **结构化日志系统** 由 SQLite 支持的日志,带有 UTC 时间戳。 - 🎛️ **SaaS 风格 UI** 受 Datadog 风格布局启发的暗色系可观测性仪表板。 ## 🏗️ 架构概览 ``` [ Packet Capture / Simulator ] ↓ (EVENT BUS) ↓ ┌─────────────────────────────┐ │ Flow Processor │ │ Alert Engine │ │ Log Manager │ └─────────────────────────────┘ ↓ (EVENT STREAM) ↓ ┌─────────────────────────────┐ │ Database (SQLite) │ │ WebSocket Broadcast Layer │ └─────────────────────────────┘ ↓ [ FastAPI Dashboard UI ] ``` ## 📁 项目结构 ``` src/ ├── core/ # Time utils, config, logging ├── events/ # Event bus system ├── flows/ # Flow aggregation engine ├── alerts/ # Detection + alert manager ├── database/ # SQLAlchemy models + DB layer ├── dashboard/ # FastAPI + Web UI + WebSockets ├── utils/ # Simulation + helpers ``` ## 🚀 快速入门 ### 🧰 前置条件 - Python 3.10+ - (用于实时抓包的可选依赖) - Windows:Npcap - Linux:libpcap-dev ## 📦 安装(推荐方式:UV) ### 1. 创建虚拟环境 ``` uv venv ``` ### 2. 激活环境 **Windows** ``` .venv\Scripts\activate ``` **Linux/Mac** ``` source .venv/bin/activate ``` ### 3. 安装依赖 ``` uv pip install -r requirements.txt ``` ## ▶️ 运行项目 ### 🧪 模拟模式(推荐) ``` uv run python main.py --simulate ``` ### 🌐 实时模式 ``` uv run python main.py ``` ### 🌍 访问仪表板 ``` http://localhost:8000 ``` ![仪表板](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/6947883b76204203.png) ![告警管理](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/df2189ebcd204205.png) ## ⚙️ 配置 ### `config/config.yaml` * 网络接口设置 * 仪表板端口 * 存储路径 ### `config/rules.yaml` * 启用/禁用检测规则 * 调整以下项的阈值: * 流量激增 * 连接泛洪 * 异常情况 ## 🧠 当前限制(Alpha 阶段) * 偶尔出现的 UI 刷新不一致问题 * 使用 SQLite(尚不具备扩展性) * 有限的身份验证/安全层 * 重构中的部分内部类型不一致问题 * 事件流水线仍在演进 ## 🧭 路线图 ### v0.2(下一版本) * 完全的纯 WebSocket 数据流(移除轮询 API) * 改进的告警去重系统 * 更好的流关联引擎 ### v0.3 * PostgreSQL 支持 * 多节点事件处理 * 规则插件系统 ### v1.0 * 生产就绪的 SOC 可观测性平台 * SaaS 风格的多租户仪表板 * 基于角色的访问控制 ## 🧩 优质新手任务 * 改进告警去重逻辑 * 为日志 API 添加分页功能 * 增强 WebSocket 重连处理 * UI 改进(仪表板卡片 + 图表) * 提高流聚合的准确性 ## 🛡️ 许可证 MIT 许可证 — 可自由使用、修改和贡献。 ## 🚀 愿景 NetSentryx 的目标是成为: ## 📌 版本 **v0.1-alpha**
标签:AMSI绕过, API集成, AV绕过, FastAPI, IP 地址批量处理, NetFlow, Python, SaaS, SQLite, WebSocket, 事件总线, 事件驱动架构, 云计算, 仪表盘, 依赖分析, 包捕获, 可观测性, 告警引擎, 威胁检测, 安全研究社区, 安全运营, 密码管理, 异常检测, 扫描框架, 无后门, 网络安全, 规则引擎, 逆向工具, 防御绕过, 隐私保护