备份必须物理隔离、强加密、最小权限且闭环验证;禁放Web可访问路径,推荐/opt/backup/等独立加密卷,权限设为700,私钥用AES256加密并离线保管,恢复前须离线校验。
备份文件一旦落入错误路径或权限失控,就等于把系统钥匙交到攻击者手上。妥善保管的关键是物理隔离、强加密、最小权限和闭环验证——不是“藏好”,而是让泄露后也无法解密、无法访问、无法滥用。
绝对禁止将备份文件放在 /var/www/、/usr/share/nginx/html/ 或任何被 Nginx root 或 alias 指向的路径下。否则一个简单 URL(如 https://example.com/backup/nginx_20260820.tar.gz)就能直接下载。
www-data 或 nginx)对该目录无读取权限curl -I http://localhost/backup/,应返回 404 或 403;若返回 200 或目录列表,立即整改location ^~ /backup/ { deny all; } 强制拦截,但这只是补救,不是替代迁移明文备份 = 泄露即失守。即使备份目录不被 Web 访问,服务器被入侵后仍可能被拖库。
gpg --cipher-algo AES256 --symmetric 加密,口令离线保存(如密码管理器),严禁写入脚本或环境变量600,属主为 root,禁止组和其他用户读写:chmod 600 /opt/backup/nginx_full_20260820.tar.gz.gpg
700:chmod 700 /opt/backup/,防止非 root 用户列出内容本地磁盘备份只是心理安慰。真正有效的备份必须跨域隔离。
/backup、/tmp、Docker 卷)PutObject,禁用 ListBucket 和 DeleteObject,防勒索软件清空备份恢复动作本身是高危操作。未经验证的备份覆盖生产配置,可能引发服务中断或引入后门。
gpg --verify backup.gpg + sha256sum -c checksums.sha256
600、属主是否为 root:root;检查 Nginx 配置语法:nginx -t
nginx -s reload,避免 kill -HUP 等非标准方式