首页/数据/数据库速查/安全基线(bind / requirepass / rename / 防火墙)
Redis 运维与场景124 条

安全基线(bind / requirepass / rename / 防火墙)

Redis 未授权访问是经典事故:绑定内网、强密码、必要时改危险命令名、防火墙白名单、专用低权限账号运行,五件套缺一不可。

数据库速查数据更新于 2026-10-13

安全基线是什么

Redis 未授权访问是长期高危问题:早期版本默认没有密码,并且监听全部网卡,攻击者可以直接读数据、写键、甚至借持久化写文件。安全基线由五件事组成:绑定必要网卡、设置强密码、限制危险命令、用防火墙或安全组收窄来源、以专用低权限账号运行。它们互相不可替代,缺一件就等于没做。

基本信息

网络层bind 指定监听地址,安全组或防火墙只放行应用网段
认证requirepass 强密码;6.0 起可用 ACL 按账号授权
命令控制rename-command 改名或禁用 FLUSHALL、KEYS、CONFIG 等
运行身份专用系统账号,文件与目录属主一致,不用 root
默认端口6379(TCP),集群总线默认在数据端口加 10000

典型使用场景

  • 新实例上线前的安全检查,逐项核对基线
  • 等保测评或安全扫描点名「Redis 未授权访问」后的整改
  • 内网横向渗透演练后确认实例不可被当作跳板
  • 云上实例被告警开放 6379 端口,需要收窄来源
  • 运维交接时用同一份清单核对,避免配置漂移

基线配置片段

基线配置片段
bind 127.0.0.1 10.0.0.10      # 只监听必要网卡
protected-mode yes
requirepass 32位以上随机密码
# 6.0 之前可用改名规避危险命令(注意客户端兼容性):
# rename-command FLUSHALL ""
# rename-command KEYS ""
# rename-command CONFIG ""
appendonly yes                  # 开启持久化,避免重启丢数据

核验命令

核验命令
redis-cli -h 10.0.0.10 -a "$REDIS_PASS" PING     # 密码走环境变量,别写进命令历史
ss -tlnp | grep 6379                             # 确认监听地址与进程用户
redis-cli -h 10.0.0.10 -a "$REDIS_PASS" ACL LIST   # 6.0+ 看账号与权限
redis-cli -h 10.0.0.10 CONFIG GET protected-mode
redis-cli -h 10.0.0.10 INFO server | grep -E "redis_version|config_file"

加固项与常见错法

加固项作用常见错法
bind只监听业务需要的网卡只设密码不改 bind,密码泄露即全网可达
requirepass开启密码认证用弱口令,或把密码写进代码仓库
protected-mode无密码且未绑定时的基础兜底依赖默认值却不确认是否被关掉
rename-command禁用或改名危险命令禁用 KEYS 后客户端库不兼容却没评估
ACL按账号分配最小权限所有业务共用同一个默认账号
运行用户限制被利用后的破坏面直接用 root 运行 redis-server
上云不等于安全:安全组必须只对应用网段放行 6379。历史上大量挖矿与勒索事件都源于实例直接暴露在公网,且没有设置密码。
Redis 6.0 及以上的 ACL 比一刀切禁用命令更实用:给每个业务分配独立账号,只授予必要命令与键前缀权限,既缩小攻击面,也不会破坏其它客户端的兼容性。
不要把密码写在启动脚本、CI 日志或命令行参数里:命令行会进入 shell 历史与进程列表。使用环境变量、权限为 600 的配置文件,或集中式密钥管理。

易错点

  • 只设了密码却没改 bind:密码被爆破或泄露后依然可以直连实例
  • rename-command 禁用了 KEYS 却没有评估兼容性:上线后发现功能不可用
  • 用 root 运行 redis-server:一旦被写入文件或执行命令,破坏面覆盖整机
  • 把 6379 暴露到公网再依赖密码:爆破与漏洞利用的时间窗远比想象中短

数据来源与参考

  • Redis 官方文档: 安全
  • Redis 官方文档: ACL

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌