centos redis配置密码怎么设置

centos redis配置密码怎么设置
最新回答
浅笑末路繁华

2021-08-27 18:00:28

在CentOS系统中为Redis设置密码可通过修改配置文件(推荐)命令行临时设置两种方式实现,具体步骤如下:

方法一:修改配置文件(持久生效,推荐生产环境使用)
  1. 定位配置文件Redis默认配置文件路径为/etc/redis/redis.conf,若自定义路径需根据实际位置调整。

  2. 编辑配置文件使用文本编辑器(如vi或nano)打开文件:

    sudo vi /etc/redis/redis.conf
  3. 设置密码

    查找requirepass字段(若不存在则手动添加),取消注释并修改为强密码:requirepass YourStrongPassword123!

    密码要求:长度至少8位,包含大小写字母、数字及特殊符号(如!@#$%^&*)。

  4. 保存并退出编辑器

    vi:按Esc后输入:wq保存退出。

    nano:按Ctrl+O保存,Ctrl+X退出。

  5. 重启Redis服务

    sudo systemctl restart redis
  6. 验证密码

    连接Redis:redis-cli -h localhost -p 6379

    输入密码验证:AUTH YourStrongPassword123!若返回OK,则密码设置成功。

方法二:命令行临时设置(重启失效,仅限测试环境)
  1. 连接Redis

    redis-cli -h localhost -p 6379
  2. 动态设置密码

    CONFIG SET requirepass YourTempPassword456!
  3. 验证密码

    执行任意命令(如SET test_key "value"),若提示需认证,则密码生效。

    输入AUTH YourTempPassword456!完成验证。

安全增强建议
  1. 备份配置文件修改前备份原文件,避免误操作导致服务异常:

    sudo cp /etc/redis/redis.conf /etc/redis/redis.conf.bak
  2. 限制访问权限

    防火墙规则:仅允许可信IP访问Redis端口(默认6379):sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="6379" accept'sudo firewall-cmd --reload

    绑定本地IP:在redis.conf中设置bind 127.0.0.1,禁止外部直接访问。

  3. 禁用危险命令在配置文件中通过rename-command禁用高危命令(如FLUSHALL):

    rename-command FLUSHALL ""rename-command CONFIG ""
  4. 定期更新密码每3-6个月更换密码,并同步更新所有依赖Redis的应用配置。

常见问题排查
  • 密码未生效

    检查配置文件是否保存成功,重启服务是否报错(journalctl -u redis --no-pager)。

    确认客户端连接时未遗漏-a参数(如redis-cli -a YourPassword,但此方式不安全,建议手动AUTH)。

  • 连接拒绝

    若启用bind 127.0.0.1,需从本地连接;若需远程访问,需添加服务器IP或注释该行。

    检查防火墙是否放行Redis端口。

通过上述步骤,可安全地为CentOS上的Redis服务设置密码,并结合其他安全措施降低数据泄露风险。生产环境务必使用配置文件方式设置密码,避免临时方案导致的安全隐患。