Redis 登陆
Redis默认配置是不需要密码认证的,也就是说只要连接的Redis服务器的host和port正确,就可以连接使用。这在安全性上会有一定的问题,所以需要启用Redis的认证密码,增加Redis服务器的安全性。
修改配置文件redis.conf
#requirepass foobared
去掉前面的注释,并修改为所需要的密码:
requirepass 147258 (其中147258就是要设置的密码)
设置Redis认证密码后,客户端登录时需要使用-a参数输入认证密码,不添加该参数虽然也可以登录成功,但是没有任何操作权限
#不指定密码登陆
[[email protected] redis]# redis-cli -h 192.168.91.23 -p 6379
192.168.91.23:6379> ping
(error) NOAUTH Authentication required.
192.168.91.23:6379> keys *
(error) NOAUTH Authentication required.
#使用密码认证登录(其中-p是小写)
[[email protected] redis]# redis-cli -h 192.168.91.23 -p 6379 -a 147258
192.168.91.23:6379> ping
PONG
#除了按上面的方式在登录时,使用-a参数输入登录密码外,也可以不指定,在连接后使用auto进行验证:
[[email protected] redis]# redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> auth 147258
OK
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "147258"
远程登陆另外一个redis服务
[[email protected] redis]# redis-cli -h 192.168.91.22 -p 6379 -a 123456
192.168.91.22:6379> ping
PONG
192.168.91.22:6379> config get requirepass
1) "requirepass"
2) "123456"
修改密码
(1)动态生效修改密码
127.0.0.1:6379> config set requirepass 123456
OK
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "123456"
[[email protected] redis]# redis-cli -h 127.0.0.1 -p 6379 -a 123456
127.0.0.1:6379> ping
PONG
(2)修改redis.conf
requirepass123456
在Redis集群中使用认证密码
如果Redis服务器,使用了集群。除了在master中配置密码外,也需要在slave中进行相应配置。在slave的配置文件中找到如下行,去掉注释并修改与master相同的密码即可:
# masterauth master-password