记录一次redis服务被攻击

238 阅读2分钟

一个风和日丽风平浪静的下午。我照常吃着火锅唱着歌,写着文档,上着课(然而上课并不听,相信你也是吧)。

突然一下,很快嗷,我自己部署的项目进不去了,登录之后仍然显示需要登录。

坏。。出事了。。

我直接一个F12看下错误 错误是后端传回的401 登录已过期。

坏。。出事了。。

我直接登录服务器,一个docker命令docker logs杀进服务器就是看后台容器的日志,报了个redis是只读的。

what? redis只读?

没遇到过,百度之。

千篇一律 大概就是说redis主从复制的时候从服务会变成只读的。

what? 什么主从?

我就用reids来存个token还涉及主从了?

我直接登录服务器,一个docker命令docker logs杀进服务器就是看redis的日志,报了个redis主从同步失败

Apr 2023 18:44:24.828 * Connecting to MASTER 194.38.20.225:888

Apr 2023 18:44:24.829 * MASTER <-> REPLICA sync started

Apr 2023 18:44:24.898 # Error condition on socket for SYNC: Connection refused

百度一下

千篇一律 改bind 取消bind

RBL 改完重启,当时是好了,过段时间又开始了。。这不是问题的关键。也不是关键的问题。

不过这样的表现倒是给了我一点提示。。


我目前有以下已知内容

  • 这个错误应该不是我的redis主动触发的,每天发生是必然事件,但是不定什么时候发生
  • Connecting to MASTER 194.38.20.225:888这是什么鬼?这是什么鬼ip我咋不知道?
  • 我并没有配置主从哪来的主从同步?

综上所述,我的redis被攻击了。

找到问题就基本上解决问题了。

下面开始解决问题:

首先明确,redis配置的bind属性并不是引起问题的因素; 其次,我没有配置主从,这个报错应该是别人连我报错了。

解决方案:

防火墙设白名单🤭