LuzTalaveraMartinez/Network-Intrusion-Detection-System-LMTM
GitHub: LuzTalaveraMartinez/Network-Intrusion-Detection-System-LMTM
基于 Snort、Fail2ban、AIDE、Loki 与 Grafana 构建的可扩展、容器化的网络入侵检测与 SOC 监控基础设施,提供实时告警、日志集中管理与可视化取证分析。
Stars: 0 | Forks: 0
# 🛡️ 高级 SOC 基础设施与主动 IDS 监控 - LMTM 2.0
### 👤 作者:**Luz Maria Talavera Martinez**
**日期:** 2026 年 4 月 26 日
**专业方向:** 网络安全 & 基础设施自动化

## 🌟 项目概述
该生态系统代表了从传统 IDS 向主动式**安全运营中心 (SOC)** 的演进。它不仅限于捕获数据包;而是从多个维度处理安全遥测数据,以提供对 Linux 服务器攻击面的全面可见性。
该项目的开发通过**人类 + AI 协同设计**方法论进行了优化,打造出了一个具备弹性的数据架构,能够在优化过的硬件(8GB RAM)上运行,而不会牺牲取证分析的深度。
## 🛠️ SOC 架构(纵深防御)
该系统在**分层防御** 原则下运行,覆盖范围从网络层一直到内核完整性:
### 1. NIDS(网络入侵检测系统)
* **引擎:** Snort 2.9.x
* **功能:** 实时协议分析和特征匹配。
* **检测:** 端口扫描(TCP/UDP)、SQL 注入、跨站脚本攻击 (XSS)、DoS 攻击及 ICMP 泛洪攻击。
### 2. IPS(入侵防御系统)
* **引擎:** Fail2ban
* **功能:** 主动的事件响应。
* **动作:** 关联身份验证日志(Auth.log),在检测到暴力破解尝试(SSH/HTTP)后,通过动态防火墙规则自动封禁 IP。
### 3. HIDS(基于主机的入侵检测系统)
* **引擎:** AIDE(高级入侵检测环境)
* **功能:** 文件完整性审计。
* **动作:** 监控关键目录(`/etc`、`/bin`、`/sbin`)的属性(Mtime、Ctime、Inode、Hash)。检测发生可能入侵后的未授权修改。
### 4. 防火墙日志记录(L3/L4)
* **引擎:** UFW(Uncomplicated Firewall)
* **动作:** 集中被拒绝/阻断的数据包日志,以识别外部网络侦察模式。
## 🚀 自动化工程(SOC 流水线)
为确保该系统能够**在任何环境中复现**,我们开发了一个自动化部署流水线:
* **主安装脚本 (`setup_soc.sh`):** 一个智能脚本,可检查前置条件、安装依赖项、配置 Python 虚拟环境(`nids_env`)并以无人值守的方式下载基础设施二进制文件(Loki/Promtail)。
* **日志集中管理 (Loki Stack):**
* **Promtail:** 作为传输代理,抓取来自 `/var/log/snort`、`/var/log/fail2ban.log` 和 `/var/log/aide/aide.log` 的日志。
* **Loki:** 高效的日志存储引擎,它对元数据进行索引而不是完整内容,从而实现超高速的 LogQL 搜索。
## 📊 专业的 Grafana 仪表板
控制面板的设计遵循了针对 **SOC 分析师的 UX 原则**,提供了:
* **影响指标 (Stat Panels):** 红色(严重)和橙色(警告)的可视化计数器,用于 Snort 和 Fail2ban 警报。
* **威胁时间轴:** 显示可疑活动峰值(例如使用 Nikto 或 Nmap 进行扫描)的时间序列图表。
* **统一取证控制台:** 实时日志流,允许直接在浏览器内查看攻击剖析(源 IP、目标端口、规则消息),而无需切换页面。
* **文件完整性:** 专用的 AIDE 报告面板,用于直观展示在安全事件发生后哪些文件被修改了。
## 📁 生态系统结构
```
├── automation/ # Binarios de infraestructura (Loki/Promtail)
├── configs/ # Configuraciones YAML para el transporte de datos
├── dashboards/ # Modelo JSON del Dashboard (ADN Visual)
├── docs/ # Bitácoras y resúmenes técnicos de ingeniería
├── img/ # Evidencia visual y diagramas
├── scripts/ # Motores de automatización (Setup & Start)
└── requirements.txt # Dependencias para el análisis de IA/ML
```
## ⚙️ 三步部署
1. **安装:**
`cd scripts && sudo ./setup_soc.sh`
2. **激活:**
`./scripts/iniciar_soc.sh`
3. **可视化:**
在 Grafana(`http://localhost:3000`)中导入 `dashboards/dashboard_soc.json`。
## 🐳 SOC 2.0 基础设施(Docker 版本)
为了获得更高的稳定性和便捷的部署体验,可视化与数据基础设施现在运行在隔离的容器中。这避免了端口冲突并简化了维护工作。
### 基础设施部署
在项目根目录下,运行快速启动命令以拉起 **Loki**、**Grafana** 和 **Promtail**:
```
./DOCKER_START.md
```
### 容器化组件:
* **Grafana(端口 3000):** 具备数据持久化的高级可视化。
* **Loki(端口 3100):** 优化的日志管理。
* **Promtail:** 安全遥测传输代理。
**“安全不是一个产品,而是一个自动化的过程。”**
**由 Luz Maria Talavera Martinez 精心开发** | *主动防御 & 安全情报。* 🛡️✨
标签:AIDE, CISA项目, Cutter, Fail2ban, Grafana, IPS, Loki, Wireshark, 入侵检测系统, 入侵防御, 动态API解析, 句柄查看, 威胁检测与响应, 子域名枚举, 安全仪表盘, 安全数据, 安全数据湖, 安全运营中心, 开源安全工具, 插件系统, 日志可视化, 暴力破解防护, 系统分析, 系统安全, 网络分析, 网络协议分析, 网络安全, 网络映射, 网络流量分析, 蜜罐防御, 请求拦截, 逆向工具, 逆向工程平台, 防御自动化, 隐私保护