os:Ubuntu 20.04.3 LTS
安装redis : sudo apt install redis-server
此时redis server不需要密码验证,可直接登录:
redis-cli
127.0.0.1:6379> KEYS *
(empty list or set)
127.0.0.1:6379>
安全考虑,需要为redis设置密码,编辑/etc/redis/redis.conf文件,找到如下行:
# requirepass foobared
修改为:
requirepass mypwd
如果需要修改端口的话,则修改port 6379,将6379修改为期望的端口
重启redis:
sudo /etc/init.d/redis-server restart
设置Redis认证密码后,客户端登录时需要使用-a参数输入认证密码,不添加该参数虽然也可以登录成功,但是没有任何操作权限。如下:
redis-cli -h localhost -p your_port
127.0.0.1:6379> KEYS *
(error) NOAUTH Authentication required.
127.0.0.1:6379>
redis-cli -h localhost -p your_port
localhost:36379> KEYS *
(error) NOAUTH Authentication required.
localhost:36379>
redis-cli -h localhost -p your_port -a
现在加入-a参数并输入密码,如下:
redis-cli -h localhost -p 6379 -a mypwd
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
localhost:6379> KEYS *
(empty list or set)
localhost:6379> CONFIG GET requirepass
1) "requirepass"
2) "mypwd"
localhost:6379>
在命令行客户端配置密码(redis重启前有效)
前面介绍了通过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配置文件中的密码。
在Redis集群中使用认证密码
如果Redis服务器,使用了集群。除了在master中配置密码外,也需要在slave中进行相应配置。在slave的配置文件中找到如下行,去掉注释并修改与master相同的密码即可:
# masterauth master-password
注意:
yum 安装redis , 设置密码可以 直接打开 requirepass ,后面接密码
另外,必须关掉bind 127.0.0.1 之后,外部才能访问redis,否则无法访问,报错 connect refuse。
d:\redis>redis-cli.exe -h your_ip -p your_port -a your_password
redis_ip:redis_port> KEYS *
(empty list or set)
redis_ip:redis_port>
redis启动,密码为password123
redis-cli.exe -h localhost -p 6379 -a password123
redis关闭:
#似乎不好使
redis shutdown
只能用这个了:
sudo /etc/init.d/redis-server stop