Redis设置认证密码 Redis使用认证密码登录 在Redis集群中使用认证密码!!

 

Redis设置认证密码 Redis使用认证密码登录 在Redis集群中使用认证密码!!

 

背景:Redis默认配置是不需要密码认证的,也就是说只要连接的Redis服务器的host和port正确,就可以连接使用。这在安全性上会有一定的问题,所以需要启用Redis的认证密码,增加Redis服务器的安全性。

 

1. 修改配置文件

Redis的配置文件默认在/etc/redis.conf,找到如下行:

去掉前面的注释,并修改为自己所需要的密码:

# requirepass foobared

 

2. 重启Redis

如果Redis已经配置为service服务,可以通过以下方式重启:

systemctl restart  redis 

如果Redis没有配置为service服务,可以通过以下方式重启:

/usr/local/bin/redis-cli shutdown
/usr/local/bin/redis-server /etc/redis.conf

 

3. 登录验证

设置Redis认证密码后,客户端登录时需要使用-a参数输入认证密码,不添加该参数虽然也可以登录成功,但是没有任何操作权限。如下:

$ ./redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> keys *
(error) NOAUTH Authentication required.

使用密码认证登录,并验证操作权限:

$ ./redis-cli -h 127.0.0.1 -p 6379 -a myPassword
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "myPassword"

看到类似上面的输出,说明Reids密码认证配置成功。

 

除了按上面的方式在登录时,使用-a参数输入登录密码外。也可以不指定,在连接后进行验证:

$ ./redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> auth myPassword
OK
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "myPassword"
127.0.0.1:6379> 

 

4. 在命令行客户端配置密码

前面介绍了通过redis.conf配置密码,这种配置方式需要重新启动Redis。也可以通命令行客户端配置密码,这种配置方式不用重新启动Redis。配置方式如下:

127.0.0.1:6379> config set requirepass newPassword
OK
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "newPassword"

注意:使用命令行客户端配置密码,重启Redis后仍然会使用redis.conf配置文件中的密码。

 

5. 在Redis集群中使用认证密码

如果Redis服务器,使用了集群。除了在master中配置密码外,也需要在slave中进行相应配置。在slave的配置文件中找到如下行,去掉注释并修改与master相同的密码即可:

# masterauth <master-password>

 注意:你得知道哪个是主哪个是从, 即在分好哈希槽之后的主从关系。

# 查看集群节点,确认主从关系
/usr/local/redis/bin/redis-cli -p 6379 cluster nodes

 

 举例:三主三从

三个主节点上增加认证,即 requirepass 

从里是加上对应的主节点里的密码,即 masterauth 


主: 开启密码
从: 增加主对应关系

 

 

6. 通常情况下,如果业务方是通过连接池方式请求到Redis集群,需要修改所有Redis服务的redis.conf文件,即master、slave节点都需要修改。

1、密码设置(推荐)
方式一:修改所有Redis集群中的redis.conf文件加入:

masterauth passwd123 
requirepass passwd123 

说明:这种方式需要重新启动各节点

 

方式二:进入各个实例进行设置:

./redis-cli -c -p 6379 
config set masterauth passwd123 
config set requirepass passwd123 
config rewrite 

 

 

 

 ----

扩展:实验过程中发现也有将主从六台机器全部加上 requirepass 、 masterauth 密码认证,测试连接也正常,即全部写上就不需要区分主从关系了,反正怎么分都是对的。

 

 

 

 

 

 

 、、、

参考:https://www.bbsmax.com/A/o75NmrPJW3/

http://t.zoukankan.com/linjiqin-p-7462822.html

、、、

 

posted @   i潘小潘  阅读(1920)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探
点击右上角即可分享
微信分享提示