您好,反馈一处安全设计问题,建议后续版本优化:【环境】Linux 专业版面板;Redis 8.0.6(经面板 Redis 插件安装/更新)。【问题】1. Redis 的 systemd 服务文件中,停止命令以明文参数携带密码,例如: ExecStop=/www/server/redis/src/redis-cli -a <密码> shutdown 任何能读取该文件或进程命令行的本地账号,都能直接拿到 Redis 密码。2. Redis 配置文件默认权限为 664,其中 requirepass 亦为明文,其他本地账号可直接读取。3. 该服务文件由安装/更新流程下载写入,用户自行加固后会在升级/重装时被还原,无法持久生效。【建议】(任选其一)- 停止命令改用 redis-cli 的 REDISCLI_AUTH 环境变量 + systemd EnvironmentFile(文件权限 640), 避免明文出现在 unit 文件与命令行中;- 或安装时把 redis.service 权限设为 600,配置文件设为 640;- 或在面板安全设置中提供一键开关,并在升级时保留用户自定义。【期望】后续版本默认不再明文落盘凭据,且升级/重装不覆盖用户的加固配置。【复现方式】安装或更新 Redis 后,查看上述服务文件的 ExecStop 行与配置文件权限即可。谢谢。
|
|