安全检查清单
企业部署安全检查清单。
RustFS 安全最佳实践。部署期间请审查此清单,以确保系统安全可靠。
身份验证和访问控制
-
使用 S3 兼容的密钥身份验证 RustFS 使用 AWS Signature V4。确保所有请求都使用有效的 Access Key 和 Secret Key 进行身份验证。
-
基于策略的访问控制 根据最小权限原则定义访问策略。明确允许的操作,默认拒绝其他所有操作。
加密(TLS/SSL)
-
启用 TLS/SSL 配置有效的 SSL 证书。建议外部和内部访问使用不同的证书,并强制使用 TLS 1.2+。
-
证书管理 使用受信任 CA 签发的证书,并通过严格的文件权限保护私钥。
-
多域名和密码套件 为多个域名配置独立证书。使用强加密算法(例如 2048 位 RSA 或 256 位 ECC)。
凭证保护
-
更改默认凭证 切勿在生产环境中保留示例占位符(
<your-access-key>/<your-secret-key>)。初始化后立即设置唯一的访问密钥和强随机密钥,例如使用openssl rand -base64 24生成。 -
安全存储 不要硬编码凭证。使用环境变量或密钥管理系统(例如 Kubernetes Secrets)。
日志和审计
-
启用审计日志 将审计日志导出到外部系统(HTTP Webhook、Kafka、ELK、Splunk)。
-
日志收集 使用标准工具(systemd、Docker、K8s)收集日志,并通过 ELK 或 Grafana Loki 分析。
-
监控和告警 为异常行为(登录失败、异常访问模式、批量删除)设置告警。
-
可观测性 监控函数执行时间以优化性能。
API 安全
-
限制网络访问 使用防火墙或安全组限制对 S3 API(端口 9000)和控制台(端口 9001)的访问。
-
网络隔离 使用反向代理(例如 Nginx),不要直接公开存储节点。
-
关闭不必要的端口 禁用未使用的端口,不要向公共互联网公开管理界面。
WORM 合规
- 版本控制和对象锁定 启用版本控制和对象锁定以满足法规要求。
更新
-
应用补丁 定期检查并应用 RustFS 更新。
-
无中断升级 使用滚动重启流程实现零停机升级。
-
操作系统和依赖项 保持操作系统和依赖项(例如 OpenSSL)为最新版本。
定期审查此清单,以维持 RustFS 部署的安全性。