安全清单
RustFS 的安全最佳实践。在部署期间查看此清单,以确保系统安全性和可靠性。
1. 身份验证和访问控制
使用 S3 兼容的密钥认证 RustFS 使用 AWS Signature V4。确保所有请求都使用有效的访问密钥和秘密密钥进行认证。
基于策略的访问控制 根据最小权限原则定义访问策略。明确定义允许的操作;默认情况下拒绝所有其他操作。
2. 加密 (TLS/SSL)
启用 TLS/SSL 配置有效的 SSL 证书。我们建议为外部和内部访问使用不同的证书,并强制使用 TLS 1.2+。
证书管理 使用来自受信任 CA 的证书。使用严格的文件权限保护私钥。
多域和密码套件 为多个域配置独立的证书。使用强大的加密算法(例如,2048 位 RSA 或 256 位 ECC)。
3. 凭证保护
更改默认凭证 在初始化后立即将默认帐户(例如,
rustfsadmin)更改为强随机密码。安全存储 不要硬编码凭证。使用环境变量或秘密管理系统(例如,Kubernetes Secrets)。
4. 日志记录和审计
启用审计日志 将审计日志导出到外部系统(HTTP Webhook、Kafka、ELK、Splunk)。
日志收集 使用标准工具(systemd、Docker、K8s)收集日志,并使用 ELK 或 Grafana Loki 进行分析。
监控和警报 为异常行为(登录失败、异常访问模式、大规模删除)设置警报。
可观察性 监控功能执行时间以优化性能。
5. API 安全
限制网络访问 使用防火墙或安全组限制对 S3 API(端口 9000)和控制台(端口 9090)的访问。
网络隔离 使用反向代理(例如,Nginx)而不是直接暴露存储节点。
关闭不必要的端口 禁用未使用的端口,不要将管理界面暴露给公共互联网。
6. WORM 合规性
- 版本控制和对象锁定 启用版本控制和对象锁定以满足法规要求。
7. 更新
应用补丁 定期检查并应用 RustFS 更新。
无中断升级 使用滚动重启过程进行零停机升级。
操作系统和依赖项 保持操作系统和依赖项(例如,OpenSSL)的更新。
定期查看此清单以维护安全的 RustFS 部署。