部署最佳实践
Fystack 实施严格的部署安全控制,以保护生产基础设施和敏感的密码学材料。本文档概述了我们的核心部署安全原则:网络隔离、访问控制和终端防护。
1. 私有网络部署与 VPN 访问
Fystack 的所有生产基础设施都部署在私有网络中,并强制通过 VPN 访问,确保关键服务永远不会直接暴露在公网上。
网络架构
组件 | 网络配置 |
|---|---|
应用服务器 | 部署在私有子网中,没有公网 IP 地址 |
数据库服务器 | 隔离在专用数据库子网中,只能从应用层访问 |
MPC 节点 | 部署在高度受限的私有网络中,通过点对点 VPN 网状网络互联 |
管理员访问 | 所有管理操作和部署都必须通过 VPN |
公网 | 只有负载均衡器和 API 网关拥有公网 endpoint |
VPN 访问要求
所有访问生产基础设施的人员都必须通过 VPN 进行身份验证,并遵循以下控制措施:
- 多因素认证(MFA): 必须使用硬件安全密钥或身份验证器应用
- 设备合规: 仅允许启用全盘加密和终端防护的受管设备
- IP 白名单: VPN 访问仅限于授权的 IP 范围
- 会话监控: 所有 VPN 会话都会被记录,并监控是否存在异常
- 自动超时: VPN 会话在闲置 8 小时后过期
- 基于证书的认证: 除凭证外,还必须提供客户端证书
网络分段
网络层级 | 访问控制 |
|---|---|
公共区 | 仅负载均衡器、CDN 和 DDoS 防护 |
DMZ 区 | API 网关、反向代理、WAF |
应用区 | 应用服务器,仅可从 DMZ 和 VPN 访问 |
数据区 | 数据库,仅可从应用区访问 |
安全区 | MPC 节点、KMS、secret store:最高限制级别 |
2. 用于 KMS 和 Secret Manager 访问的云 IAM 角色
Fystack 使用云 IAM 角色对密钥管理服务(KMS)和 Secret Manager 的访问实施最小权限原则。只有必要的服务和 C 级高管才能访问关键的密码学材料。
IAM 访问模型
资源 | 访问人员 | 权限级别 |
|---|---|---|
KMS 主密钥 | 仅 CEO、CTO | 完全访问(加密、解密、管理) |
Secret Manager | 仅 CEO、CTO | 完全访问(读取、写入、删除) |
应用服务 | API 服务、MPC 节点(通过服务账号) | 对特定 secret 的只读访问 |
开发人员 | 无访问权限 | 对生产环境 KMS 或 secret 没有任何权限 |
DevOps 团队 | 无直接访问权限 | 可以部署,但无法读取 secret 的值 |
服务账号限制
应用服务通过权限范围严格受限的服务账号访问 KMS 和 Secret Manager:
- 服务专用账号: 每个服务都有自己专用的服务账号
- 最小权限: 仅授予特定操作所需的权限
- Secret 级访问控制: 按单个 secret 授予访问权限,而不是整个 secret store
- 有时效的凭证: 服务账号 token 会自动过期和轮换
- 审计日志: 所有 KMS 和 Secret Manager 访问都会记录到不可篡改的审计记录中
访问控制策略
KMS 访问策略示例:
- CEO 和 CTO 可以管理 KMS 密钥并查看审计日志
- 应用服务账号只能使用特定密钥进行加密/解密
- 所有密钥使用都会连同调用方身份和时间戳一起记录
- 删除密钥需要 CEO 和 CTO 双重授权
- 密钥轮换自动执行并受到监控
Secret Manager 访问策略示例:
- CEO 和 CTO 可以创建、读取、更新和删除 secret
- 应用服务只能读取分配给它们的 secret
- Secret 访问会连同服务身份和 IP 地址一起记录
- Secret 版本不可变,并会保留以供审计
- Secret 轮换会自动触发服务更新
3. 终端检测与响应(EDR)
Fystack 以 sidecar 形式部署 CrowdStrike 或 Bitdefender 等 终端检测与响应(EDR) 解决方案,用于检测和阻止针对所有生产系统的渗透尝试。
EDR 部署架构
组件 | EDR 防护 |
|---|---|
容器 Sidecar | EDR agent 以 sidecar 容器的形式部署在每个 pod 中 |
进程监控 | 实时监控所有进程执行和系统调用 |
网络流量 | 检查入站和出站网络连接 |
文件完整性 | 检测未经授权的文件修改 |
内存扫描 | 检测驻留内存的恶意软件和代码注入 |
EDR 能力
威胁检测:
- 行为分析: 识别异常的进程行为和权限提升
- 基于特征的检测: 拦截已知的恶意软件和漏洞利用
- 机器学习: 检测零日威胁和高级持续性威胁(APT)
- 横向移动检测: 识别跨系统的未经授权访问尝试
- 勒索软件防护: 检测并阻止文件加密行为
响应措施:
- 自动遏制: 将受感染的容器与网络隔离
- 进程终止: 自动终止恶意进程
- 取证采集: 保留内存和磁盘状态以供调查
- 告警升级: 立即通知安全团队
- 回滚能力: 从已知良好的容器镜像恢复
EDR 监控与告警
告警类型 | 响应措施 |
|---|---|
检测到严重威胁 | 自动隔离容器,并立即通知安全团队 |
可疑进程执行 | 终止进程,并向安全运营中心发送告警 |
未经授权的网络连接 | 阻断连接,并记录网络流量以供分析 |
文件完整性受损 | 从已校验的镜像重新部署容器,并记录事件 |
检测到内存注入 | 终止进程,捕获内存转储,并通知 CEO/CTO |
EDR 集成
- SIEM 集成: EDR 事件会转发到安全信息与事件管理系统
- 事件响应手册: 针对常见威胁场景的自动化响应流程
- 威胁情报源: 实时更新新出现的威胁和入侵指标
- 合规报告: 为安全审计自动生成合规报告
- 取证分析: 为事后调查提供详细的遥测数据
4. 总结
Fystack 的部署安全策略建立在三大基本支柱之上:
- 私有网络隔离与 VPN 访问确保关键基础设施永远不会直接暴露在互联网上
- 严格的 IAM 控制将 KMS 和 Secret Manager 的访问权限仅限于 CEO 和 CTO,服务账号权限保持最小化
- EDR sidecar 部署为所有生产系统提供实时威胁检测和自动化响应
这些控制措施协同作用,构建起纵深防御的安全体系,保护加密密钥、敏感数据和生产基础设施免受外部和内部威胁。