核心用法
Security Dashboard 是一个面向 OpenClaw 网关和 Linux 服务器基础设施的实时监控工具。安装后默认以 openclaw-dashboard 专用用户运行,通过 systemd 服务托管,监听 127.0.0.1:18791 仅本地访问。用户需通过 SSH 端口转发 (ssh -L 18791:localhost:18791) 访问 Web 界面,或调用 REST API (/api/security) 获取 JSON 格式的安全指标。支持 systemctl 启停控制与 journalctl 日志查看。
显著优点
1. 纵深防御架构:专用无 Shell 用户 + 有限 sudo 权限 + systemd 沙箱(PrivateTmp/ProtectSystem/NoNewPrivileges)三重隔离
2. 零网络暴露设计:默认仅绑定 localhost,彻底消除公网攻击面,需主动配置才会开放端口
3. 全栈安全覆盖:涵盖 OpenClaw 网关状态、Tailscale VPN、UFW/firewalld 防火墙、fail2ban 入侵防护、Caddy TLS、SSH 认证配置、资源监控等 7 大维度 50+ 指标
4. 实时分级告警:Critical/Warning/Info 三级可视化警报,支持管道化集成(如 ./scripts/check-alerts.sh | notify-send)
5. 无框架依赖:纯 Node.js + Vanilla JS,无额外前端框架依赖,部署轻量
潜在缺点与局限性
- 特权依赖:部分检测(fail2ban 状态、防火墙规则、systemctl 服务状态)仍需 sudo,虽已最小化权限但仍属攻击面
- Node.js 运行时:v18+ 依赖可能增加部分精简系统的维护成本
- 无内置认证:Web 界面本身无登录机制,依赖网络层隔离(localhost/SSH隧道/VPN)实现访问控制,若错误绑定
0.0.0.0且无额外防护则完全暴露 - 静态配置:端口和绑定地址需修改源码 (
server.js) 后重启,无热配置能力 - 告警渠道有限:仅提供原始数据输出,邮件/短信/Slack 等通知需用户自行脚本集成
适合人群
- 运行 OpenClaw 网关的 Linux 服务器管理员
- 采用 Tailscale 组网的基础设施运维团队
- 追求最小攻击面、偏好"默认安全"设计原则的 DevOps/Security 工程师
- 需要可脚本化安全指标采集的自动化运维场景
常规风险
| 风险场景 | 说明 | 缓解措施 |
|---------|------|---------|
| 错误绑定公网 | 修改 `server.js` 为 `0.0.0.0` 后未配防火墙 | 文档明确警告,需配合 Tailscale 或防火墙使用 |
| root 运行 | 安装时选择 root 用户导致完全提权风险 | 安装脚本默认推荐专用用户,含交互确认 |
| 配置权限泄露 | `openclaw.json` 等敏感文件权限非 600 | 内置检测并触发 Critical 警报 |
| SSH 密码爆破 | 未禁用密码认证且无 fail2ban | 面板实时显示状态并 Critical 警报 |
| 依赖服务失效 | fail2ban/防火墙被意外停止 | 纳入健康检查,停止即触发警报 |