zelop301/sammium-sentinelops
GitHub: zelop301/sammium-sentinelops
一个基于 TypeScript 与 React 构建的全栈网络安全事件指挥与响应平台,提供角色权限管理、实时协作和事件全生命周期管理,专为防御性安全教育与作品集展示设计。
Stars: 0 | Forks: 0
# Sammium SentinelOps
一个完善的全栈网络安全事件指挥与响应平台,专为作品集展示、防御性安全教育和软件工程实践而构建。
## 包含内容
- 基于 JWT 的登录系统,包含管理员、分析师和查看者角色
- 基于角色权限的事件创建、分配、状态更改、评论和证据管理
- 安全的虚构威胁警报模拟器
- 将警报提升为响应事件
- 通过 WebSockets 提供实时更新和分析师在线状态
- 本地追加优先的审计历史记录
- 响应式深色安全运营界面
- 预置的演示数据和账户
- TypeScript 检查、生产构建、架构验证和重置工具
## 快速开始
环境要求:Node.js 20 或更高版本。
```
npm install
npm run check
npm run dev
```
访问地址:
- Web 应用程序:`http://localhost:5173`
- API 健康检查:`http://localhost:4100/health`
## 演示账户
所有账户均使用以下密码:
```
Sentinel123!
```
| 角色 | 邮箱 |
|---|---|
| 管理员 | `admin@sentinelops.dev` |
| 安全分析师 | `analyst@sentinelops.dev` |
| 查看者 | `viewer@sentinelops.dev` |
## 常用命令
```
npm run dev # Start API and web app
npm run check # Type-check and verify architecture
npm run build # Produce production builds
npm run reset # Reset the local demo database
npm run dev:api # Start only the API
npm run dev:web # Start only the web app
```
## 本地数据
API 会在首次启动时创建 `apps/api/data/sentinelops.json`。这个零配置的持久化层专为本地开发和作品集展示而设计。该服务将持久化逻辑隔离在 `store.ts` 中,方便日后轻松迁移至 PostgreSQL 或 Prisma。
## 安全范围
SentinelOps 仅用于防御和模拟。所有警报、IP 地址、账户和资产均为虚构。它不包含漏洞利用、凭证窃取、持久化、恶意软件投递或其他攻击性功能。
## 生产路线图
- PostgreSQL + Prisma 持久化
- HttpOnly refresh-token 会话
- 组织工作空间与邀请
- 带有恶意软件扫描和对象存储的文件上传
- Playwright 端到端测试
- Docker 镜像与托管部署
- 事件 PDF 报告
- 适用于互联网规模的 WebSocket 适配器,例如 Redis
有关实现的详细信息,请参阅 `ARCHITECTURE.md`、`SECURITY.md` 和 `DEBUGGING.md`。
## Docker
```
docker compose up --build
```
访问 `http://localhost:8080`。API 仍可通过 `http://localhost:4100` 访问。
标签:MITM代理, React, Syscalls, TypeScript, WebSockets, 事件管理, 安全插件, 安全运营, 库, 应急响应, 扫描框架, 自动化攻击, 请求拦截