ClouisleClouisle

安全检查清单

对外开放前逐项确认密钥、访问控制、代理、备份与沙箱

向用户开放前用本清单确认。清单描述运维人员的责任,自带 Compose/Kubernetes 文件不会自动让任何一项变为已完成。

密钥与配置

  • 替换 SECRET_KEY、POSTGRES_PASSWORD、REDIS_PASSWORD、QDRANT_API_KEY 的所有默认值。
  • 设置唯一非空的 INTERNAL_API_TOKEN,API、worker、sandbox-worker 共用它访问内部上传网关。
  • .env、Kubernetes Secret manifest、安装器产物不进版本库,文件权限收紧。
  • 生产密钥尽量进密钥管理器或外部管理的 Secret,通过维护窗口轮换。
  • API_BASE_URL/API_INTERNAL_BASE_URL 用内部服务地址,PUBLIC_API_URL、FRONTEND_URL、BACKEND_CORS_ORIGINS 用浏览器可访问的公网 origin。

认证与访问

  • 部署保持私有期间再注册首个账户,首个注册用户成为初始超级用户。
  • 按策略在管理界面配好会话时长、注册开关、邮箱/SSO 等站点设置。
  • 定期检查团队成员与管理员权限,清理不用的 API Key 与集成。
  • 启用 MFA/SSO 前先测通身份提供商配置与恢复路径。

网络与代理

  • 在外部反向代理或 Ingress 终止 HTTPS,使用有效证书。
  • 只公开前端/反向代理端口,PostgreSQL、Redis、Qdrant 与直连 API 端口留在私有网络。
  • CORS 只写精确 origin,生产环境不用 *。
  • 流式链路用 HTTP/1.1、proxy_buffering off,读写超时与 1800 秒示例一致。
  • 用 RBAC、NetworkPolicy 与 Ingress 策略限制 clouisle 命名空间访问。

数据保护与恢复

  • 在支持的环境对 PostgreSQL、Qdrant、上传文件与备份存储启用静态加密。
  • 按计划备份 PostgreSQL、Qdrant 快照与上传文件;Redis 只存缓存/队列状态,可选备份。
  • 异地保留加密副本并定义保留策略。
  • 完整恢复(含 Qdrant 与上传文件)已演练,RTO/RPO 已记录。
  • 非破坏性场景不运行 docker compose down -v,不删除 PVC。

运行时与沙箱

  • 生产镜像用固定 tag/digest,不用 latest,部署前扫描镜像。
  • 沙箱文件系统隔离保持开启,保留 Worker 所需的 seccomp/能力配置,改动前先看沙箱加固说明。
  • 按威胁模型在宿主机/集群层限制沙箱出站网络与资源。
  • Docker、Kubernetes、PostgreSQL、Redis、Qdrant、Bubblewrap、宿主机内核及时打补丁。

日志与事件响应

  • 收集并保护 API、worker、beat、frontend、代理日志,排除 token 与密码。
  • 轮询 GET /api/v1/health,用管理端可观测接口/仪表盘(需 admin:dashboard:access 权限)。项目没有内置 Prometheus /metrics 端点。
  • 对健康检查失败、异常认证、队列积压、磁盘耗尽、备份失败配告警。
  • 升级、密钥轮换、隔离、恢复、事后复盘流程已文档化。

这篇文章对你有帮助吗?

本页目录