文档首页> 技术教程> Redis 安装与基础安全配置

Redis 安装与基础安全配置

发布时间:2026-06-25 13:02        更新时间:2026-06-26 07:43
Redis 的默认配置面向本机可信环境:无密码、只监听 127.0.0.1。这套默认值原样放到服务器上,再顺手把监听改成 0.0.0.0,就成了公网扫描器最喜欢的目标。装完按四步收紧。 ## 一、安装并确认运行 ``` # Ubuntu apt install -y redis-server # CentOS yum install -y redis systemctl enable --now redis ``` redis-cli ping 返回 PONG 说明服务正常。安装完顺手看一眼版本,redis-server --version,安全修复集中在新版本里,能升级就升级。这时它只听本机,还算安全;出事都出在后面图省事的改造上。部署位置本身就是第一道防线,有内网就别放到带公网 IP 的机器上。 ## 二、设密码并绑定内网 编辑配置文件(Ubuntu 在 /etc/redis/redis.conf,CentOS 在 /etc/redis.conf): ``` requirepass 一串足够长的密码 bind 127.0.0.1 10.0.0.5 protected-mode yes ``` requirepass 设置访问密码;bind 只监听本机和指定内网地址,永远不要写 0.0.0.0;确实需要远程访问,走内网或加密隧道,不走公网。密码强度别省,Redis 处理请求极快,弱密码挡不住高速爆破。多实例部署时每个实例单独一套配置和端口,密码各配各的。改完 systemctl restart redis,用 redis-cli -a 密码 ping 验证。 ## 三、禁用危险命令 线上用不到的命令直接改名或置空: ``` rename-command FLUSHALL "" rename-command FLUSHDB "" rename-command CONFIG "" ``` 置空即禁用。CONFIG 命令一旦被利用,可以改写持久化路径向磁盘写文件,是历史上多起入侵事件的入口;FLUSHALL 一条命令清空全部数据,手滑和入侵都得防。偶尔还要用这些命令的场合,用改名方案:给命令起一个只有自己知道的别名,兼顾安全和便利。 ## 四、低权限运行与最终验证 确认服务用 redis 专用用户跑(发行版默认如此),不要改成 root,万一代码有漏洞被利用,损失范围完全不同。应用连接 Redis 的密码放在各自的配置文件里,权限收紧,别在到处可读的地方重复明文。最后两项验证: ``` redis-cli ping # 无密码时应返回 NOAUTH 错误 ss -lntp | grep 6379 # 只应看到 127.0.0.1 和内网地址 ``` 再检查防火墙和云安全组,6379 不对公网开放,两道关口都要核一遍。 Redis 的安全事故,绝大多数源于"内网没关系"的侥幸。密码、绑定、防火墙三件套配齐不过十分钟,换来的边界足够结实。