TheJose03/Prompt-Network-Monitor-con-AI
GitHub: TheJose03/Prompt-Network-Monitor-con-AI
一款基于 Go 开发的 Windows 网络安全监控工具,通过实时 Web Dashboard 和防火墙集成实现活动连接监控、异常检测与自动/手动拦截。
Stars: 0 | Forks: 0
# 网络监控器 - 规格与安装指南
## 📹 演示视频
你可以观看网络监控器实际运行的演示视频:
- **视频:** https://www.youtube.com/watch?v=MYRtj2fI4LY
- **内容:** 展示实时 Web dashboard、可疑连接检测以及自动/手动封锁系统
## 🔄 步骤 1:前置条件
**这是什么?** 这些是编译和运行网络监控器所需的依赖项。
**要求:**
- **Windows 7 或更高版本**(操作系统)
- **管理员权限**(用于防火墙和网络监控)
- **互联网连接**(用于 IP 地理定位)
- **Go 1.19 或更高版本**(用于编译源代码)
**检查 Go:**
```
go version
```
如果你没有安装 Go,请从以下网址下载:https://golang.org/dl/
## 🔄 步骤 2:项目结构
**这是什么?** 这是网络监控器的文件和文件夹组织方式。
**文件结构:**
```
Network-Monitor/
├── network-monitor_Auto/ # Versión automática (bloqueo sin confirmación)
│ ├── network-monitor_Auto.go # Código fuente principal
│ ├── go.mod # Módulos Go
│ └── go.sum # Hash de dependencias
│ ├── build.txt # Comando de compilación
├── network-monitor_Manual/ # Versión manual (requiere aprobación)
│ ├── network-monitor_Manual.go # Código fuente principal
│ ├── web.go # Servidor web para dashboard
│ ├── dashboard.html # Interfaz web moderna
│ ├── build.txt # Comando de compilación
│ ├── go.mod # Módulos Go
│ ├── go.sum # Hash de dependencias
├── README.md # Guía de instalación
└── LICENSE.txt # Licencia del software
```
## 🔄 步骤 3:编译监控器
**这是什么?** 这是将源代码转换为可执行文件的过程。
**编译步骤:**
1. **打开终端或 PowerShell**
2. **导航到目标文件夹:**
```
cd "c:\a\ruta\\Network-Monitor con IA\network-monitor_Manual"
```
3. **编译手动版本:**
```
go build -ldflags="-s -w" -o network-monitor_Manual.exe network-monitor_Manual.go web.go
```
4. **检查生成的可执行文件:**
```
dir network-monitor_Manual.exe
```
## 🔄 步骤 4:初始配置(不要创建,仅供参考)
**这是什么?** 这是准备安全列表和基本配置。
**配置文件:**
### whitelist.txt(允许的 IP)
```
# 白名单示例(允许的 IPs)
192.168.1.1
10.0.0.1
127.0.0.1
```
### blacklist.txt(你放在这里的,防火墙都会拦截)
```
# 格式:IP | 进程 | 组织 | 原因 | 影响
1.1.1.1 | malware.exe | Hacker Inc. | Malware | Ninguno
2.2.2.2 | * | Red sospechosa | Bloqueo preventivo | Posible pérdida de servicio
```
## 🔄 步骤 5:执行与使用
**这是什么?** 这是启动监控器并使用 Web dashboard。
**执行步骤:**
1. **以管理员身份运行:**
```
# 在 PowerShell 中以管理员身份(运行)
.\network-monitor_Manual.exe
```
2. **自动启动的 Web Dashboard:**
- 自动在 http://localhost:8080 打开
- 采用专业深色设计的响应式界面
- 实时更新
- 可视化连接、列表和统计数据
3. **终端监控:**
- 你将看到实时日志
- 可疑连接警报
- 手动拦截选项
## 🔄 步骤 6:高级功能
**这是什么?** 这些是此版本的增强功能。
### 现代 Web Dashboard
- **响应式界面**,采用专业深色设计
- **每 5 秒自动更新**
- **按状态、IP、进程实时过滤**
- **通过集成地图进行地理定位可视化**
- **导出为 CSV 和 JSON 格式的数据**
### 改进的日志系统
- **多种格式:** TXT, CSV, JSON
- **按日期和时间组织的会话**
- **与 Web dashboard 直接集成**
- **高级搜索与过滤**
### 智能连接控制
- **自动检测**异常情况
- 对可信可执行文件进行**哈希验证**
- 带缓存的**地理定位**以优化性能
- **与 Windows 防火墙集成**
## 🔄 步骤 7:维护与安全
**这是什么?** 这些是保持系统安全的最佳实践。
**安全建议:**
- **定期审查日志**(如果可能,每天检查)
- 使用新发现的已知 IP **保持列表更新**
- 对系统可执行文件**验证哈希**
- **监控系统**性能
## 概述
这是一款实时监控网络连接的安全应用程序,使用 Go 为 Windows 开发,配备了现代化的 Web dashboard。
## 核心功能
- **实时监控**
- 活动的 TCP 连接
- 关联的进程
- 异常检测
- **现代 Web Dashboard**
- 带有自动更新的响应式界面
- 连接的实时可视化
- 高级过滤和搜索
- 支持多种格式的数据导出
- **访问控制**
- 白名单(允许的 IP)
- 黑名单(被拦截的 IP/进程)
- 未知列表
- 可执行文件哈希验证
- **地理定位**
- 远程 IP 的位置
- 内置缓存以提高性能
- API 查询限制
- 地图可视化
- **防火墙**
- 自动/手动拦截
- 与 Windows 防火墙集成
- 详细的日志记录
- 更改撤销
## 主要组件
### 1. 存储
- 管理配置文件
- 持久化存储列表和日志
- 用于并发访问的安全同步
- 支持多种格式(TXT, CSV, JSON)
### 2. 地理定位器
- 查询 IP 的地理信息
- 提高性能的缓存系统
- 查询速率控制
- 与 Web dashboard 集成
### 3. 防火墙
- 阻止未经授权的连接
- 与操作系统集成
- 拦截事件日志记录
- 用于管理的 Web 界面
### 4. 连接监控器
- 持续监控网络连接
- 异常检测
- 关键事件管理
- 进程哈希验证
### 5. Web 服务器
- localhost:8080 上的实时 Dashboard
- 用于查询数据的 REST API
- 每 5 秒自动更新
- 现代且响应式的界面
## 可用版本
### 1. 自动版
- **自动拦截**,无需确认
- **适用场景**:
- 专业用户
- 严格保护
- 即时响应
- **风险**:
- 可能会拦截合法服务
- 需要仔细配置
### 2. 手动版(推荐)
- **完全由**用户**控制**
- 包含**现代 Web dashboard**
- **适用场景**:
- 需要审查的环境
- 倾向于完全控制的用户
- 尽量减少误报
- 实时可视化
## 限制
- 可能存在误报/漏报
- 在连接数众多的系统中性能可能受到影响
- 依赖于 UAC 权限
- 需要互联网连接进行地理定位
## 常见故障排除
### 问题:“拒绝访问”
**解决方法:** 以管理员身份运行
### 问题:“Dashboard 无法打开”
**解决方法:** 检查 8080 端口是否可用
### 问题:“地理定位不起作用”
**解决方法:** 检查互联网连接和 API 限制
### 问题:“CPU 使用率过高”
**解决方法:** 在配置中降低监控频率
## 🔧 如何降低 CPU 使用率:
为了降低监控频率并减少 CPU 使用率,你可以修改该行中的值:
**位置:** `network-monitor_Manual.go` - **函数 `StartMonitoring()`**
**当前代码:**
```
ticker := time.NewTicker(100 * time.Millisecond) // 100ms de detección
```
### 推荐选项:
1. **低 CPU 使用率(推荐):**
ticker := time.NewTicker(500 * time.Millisecond) // 500ms 检测间隔
2. **极低 CPU 使用率:**
ticker := time.NewTicker(1000 * time.Millisecond) // 1 秒检测间隔
3. **最低 CPU 使用率:**
ticker := time.NewTicker(2000 * time.Millisecond) // 2 秒检测间隔
### 修改步骤:
1. **打开文件** `network-monitor_Manual.go`
2. **查找函数** `StartMonitoring()`
3. **定位包含** `time.NewTicker(100 * time.Millisecond)` 的行
4. **将 `100 * time.Millisecond` 更改**为建议的值之一
5. **保存文件**
6. 使用以下命令**重新编译**:
go build -ldflags="-s -w" -o network-monitor_Manual.exe network-monitor_Manual.go web.go
⚠️ **注意:** 值越大 = CPU 使用率越低,但对可疑连接的检测速度越慢。
## 由于这些原因,我没有将其开源:
https://www.youtube.com/watch?v=hbbXzuLOyJ0
https://www.youtube.com/watch?v=alfIxtD9CKM
标签:EVTX分析, Go语言, Web可视化, 多模态安全, 日志审计, 程序破解, 运维工具, 防火墙管理