Redis 忽然集体报错 NOAUTH Authentication required

今天很奇怪,两台服务器上的redis毫无征兆的集体报错 NOAUTH Authentication required,一开始也没有重视,重启了下就行了,深更半夜老板说又不能访问了,才开始重视。搜下了不少人都遇到了这种状况包括红薯大哥,并且状况有点小严重。html

检查下本身是否在裸奔

不管是否开启了远程访问(毕竟阿里服务器份额占多,区域也就这么几个,花个几块钱临时用个几小时作内网扫描了),都看下是否开启了密码访问。redis

用redis-cli客户端链接远程服务器docker

./redis-cli -h 10.129.xx.xx:6379
10.129.xx.x:6379> keys *
(error) ERR operation not permitted

或者服务器

10.129.xx.x:6379> config get requirepass

若是没有输入秘密就能够访问,那么说明你在裸奔,话很少说,先设置登陆秘密再说运维

首先肯定redis使用了那个redis.conf,而后修改requirepass(若是redis加入了service,在/etc/init.d里面查看redis启动命令)ide

入侵迹象

我检查了两天服务,因为测试服是临时搭建,确定是裸奔的,可是没想的是生成服居然也是裸奔,让我很惊讶,毕竟原来是这些是有专门的运维来管理的。测试

在检查问题的过程当中裸奔的测试服被设置了密码访问,那么能够百分百确定测试服是被黑了ui

这种黑,比较简单,毕竟他没有拿到服务器的其余权限,仅仅是经过redis-cli设置了临时的登陆密码而已,重启以后,该设置就会失效(不是很肯定,因此下面用docker redis来验证确认了).net

启动redis实例code

root@aaa6982a00bb:/data# redis-cli
127.0.0.1:6379> keys *
1) "sysuser:1"
2) "sysuser:32"
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) ""
127.0.0.1:6379> config set requirepass 123456
OK
127.0.0.1:6379> config get requirepass
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth 123456
OK
127.0.0.1:6379> keys *
1) "sysuser:1"
2) "sysuser:32"

关闭redis实例,从新启动,不须要输入密码也可访问了

root@aaa6982a00bb:/data# redis-cli
127.0.0.1:6379> keys *
1) "sysuser:1"
2) "sysuser:32"
127.0.0.1:6379>
相关文章
相关标签/搜索