Redis配置连接密码

Redis默认支持密码验证,一般Redis都在内网访问,可以限制IP等,不用密码也没有关系,不过信息安全等级保护评测要求Redis配置密码访问。

单节点Redis配置密码

redis.conf配置密码,找到requirepass项目,去掉注释

# requirepass foobared
requirepass 12345678

修改后重启即可。

如果只是测试一下,可以在redis-cli中设置临时密码,下次重启就无效了,已连接客户端不受影响

redis-cli -h 10.181.3.25 -p 6379
10.181.3.25:6379>CONFIG SET requirepass 1234567890

客户端连接

redis-cli -h 10.181.3.25 -p 6379
10.181.3.25:6379> get key
(error) NOAUTH Authentication required.

认证使用AUTH命令,带上密码:AUTH 12345678

10.181.3.25:6379> AUTH 12345678
OK

也可以在在redis-cli连接的时候带上密码:

redis-cli -h 10.181.3.25 -p 6379 -a 12345678
10.181.3.25:6379> get key

SpringBoot连接

如果SpringBoot客户端没有配置密码会报错,下面是Redisson错误:

org.redisson.client.RedisAuthRequiredException: NOAUTH Authentication required.. channel: [id: 0x253ac582, L:/10.181.3.97:49802 - R:/10.181.3.25:6379] data: CommandData [promise=RedissonPromise [promise=ImmediateEventExecutor$ImmediatePromise@52cbca32(incomplete)], command=(EVAL), params=[local value = redis.call('hget', KEYS[1], ARGV[2]); if value == false then return nil; end; local t,..., 5, appws:dev:ws.account.nonce, redissontimeoutset:{appws:dev:ws.account.nonce}, redissonidleset:{appws:dev:ws.account.nonce}, redissonmap_cache__last_accessset:{appws:dev:ws.account.nonce}, {appws:dev:ws.account.nonce}:redisson_options, 1662365670189, PooledUnsafeDirectByteBuf(ridx: 0, widx: 26, cap: 256)], codec=org.redisson.codec.FstCodec]

springboot然后连接配置,配置上密码即可:

spring:
  redis:
    host: 10.181.3.25
    port: 6379
    password: 12345678

集群配置密码

集群配置和单机差不多,主Redis配置和单机一样,从服务器需要配置主服务器的密码

Redisredis.conf配置文件替换内容:

sed -i 's/# requirepass foobared/requirepass 12345678/g' redis7000.conf
sed -i 's/# requirepass foobared/requirepass 12345678/g' redis7001.conf
sed -i 's/# requirepass foobared/requirepass 12345678/g' redis7002.conf

Redisredis.conf配置文件替换内容

主要配置:requirepass 12345678masterauth 12345678

sed -i 's/# requirepass foobared/requirepass 12345678/g' redis7000.conf
sed -i 's/# requirepass foobared/requirepass 12345678/g' redis7001.conf
sed -i 's/# requirepass foobared/requirepass 12345678/g' redis7002.conf
sed -i 's/# masterauth <master-password>/masterauth 12345678/g' redis7000.conf
sed -i 's/# masterauth <master-password>/masterauth 12345678/g' redis7001.conf
sed -i 's/# masterauth <master-password>/masterauth 12345678/g' redis7002.conf

重启服务器即可。

客户端连接

和单机版差不多,连接方式也一样

redis-cli -h 10.181.3.25 -p 7000
10.181.3.25:7000> cluster nodes
NOAUTH Authentication required.
10.181.3.25:7000> auth 12345678

SpringBoot连接

配置yml连接:

spring:
  redis:
    cluster:
      nodes: xxxx
    password: 12345678

配置完成。

给TA打赏
共{{data.count}}人
人已打赏
运维

群晖NAS配置阿里云盘同步(新)

2024-11-19 10:38:00

运维

本地Elasticsearch安装配置

2024-11-19 10:38:03

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索