it-atelier-gn/spotcapture
GitHub: it-atelier-gn/spotcapture
一款用 Go 编写的轻量级数据包捕获工具,可在指定网络接口上实时抓包并将生成的 PCAP 文件自动上传至 AWS S3。
Stars: 0 | Forks: 0
# spotcapture
[](#)
[](#)
[](https://deepwiki.com/it-atelier-gn/spotcapture)
捕获网络数据包,直到接收到停止事件,并将包含已捕获数据包的 PCAP 文件上传到 S3 存储桶。
## 功能
* 在指定网络接口上进行持续的数据包捕获
* 用于高效内存管理的环形缓冲区
* 根据捕获的数据包生成 PCAP 文件
* 自动上传到 AWS S3
* 支持 HTTP 代理
* 支持多种停止事件触发器
## 停止事件
* SIGTERM 信号
* 指定端口上的 TCP/UDP 连接
## 配置
在项目根目录下创建一个 `config.yml` 文件:
```
interface: eth0 # Network interface to capture on
port: 5000 # Port to listen for stop events
key: "" # AWS Access Key ID
secret: "" # AWS Secret Access Key
region: "eu-central-1" # AWS region
bucket: "s3-bucket-name" # S3 bucket name
proxy: "http://proxy" # Optional HTTP proxy URL
```
## 构建
```
CGO_ENABLED=0 go build -o spotcapture cmd/main.go
```
## 工作原理
1. 从 `config.yml` 加载配置
2. 在指定的网络接口上启动数据包捕获
3. 将数据包存储在环形缓冲区中(最多 1000 个数据包)
4. 监听指定端口上的 TCP/UDP 连接
5. 发生停止事件时,将捕获的数据包转换为 PCAP 格式
6. 将带有时间戳的 PCAP 文件上传到 S3 存储桶
## 环境要求
* Go 1.16 或更高版本
* 网络接口访问权限(可能需要提升的权限)
* 具备 S3 写入权限的 AWS 凭证
标签:AWS S3, EVTX分析, Go, PCAP, Ruby工具, 容器网络, 日志审计, 流量监控, 网络抓包, 网络调试, 自动化