[转帖]Redis禁用命令、危险命令及规避方法

redis,禁用,命令,危险,规避,方法 · 浏览次数 : 0

小编点评

**Redis危险命令和配置项** **1. flushdb** * 清空数据库所有记录。 * 从不失败,但可能导致性能下降。 **2. flushall** * 清空所有记录,包括数据库、键和配置。 * 从不失败,但可能导致性能下降。 **3. config** * 设置客户端连接后可配置服务器。 * 可用于更改配置项。 **4. keys** * 列出所有存在的键。 * 可用于查看键是否存在。 **5. rename-command** * 重命名特定的命令。 * 使用新命令执行操作时不可用。 **禁用的具体配置项** ``` rename-command FLUSHALL \"\"rename-command FLUSHDB \"\"rename-command CONFIG \"\"rename-command KEYS \"\"复制而如果想要保留命令,但是不能轻易使用,可以重命名命令来设定:rename-command FLUSHALL joYAPNXRPmcarcR4ZDgC81TbdkSmLAzRPmcarcRrename-command FLUSHDB qf69aZbLAX3cf3ednHM3SOlbpH71yEXLAX3cf3erename-command CONFIG FRaqbC8wSA1XvpFVjCRGryWtIIZS2TRvpFVjCRGrename-command KEYS eIiGXix4A2DreBBsQwY6YHkidcDjoYA2DreBBsQ ``` **注意:** * 修改服务器配置文件时,请确保备份配置文件。 * 重新启动服务器后,才能执行禁用的命令。

正文

https://cloud.tencent.com/developer/article/1953714?areaSource=104001.147&traceId=7WZNP412yK3vh7ebw4th0

 

Redis的危险命令

1、flushdb,清空数据库,而且从不失败 2、flushall,清空所有记录,数据库,而且从不失败 3、config,客户端连接后可配置服务器 4、keys,客户端连接后可查看所有存在的键,KEYS * 命令,当数据规模较大时使用,会严重影响Redis性能,会引发Redis锁,并且增加Redis的CPU占用

如何规避Redis的危险命令

作为服务端的redis-server,我们常常需要禁用以上命令来使服务器更加安全。

禁用的具体做法是,修改服务器的配置文件redis.conf,在SECURITY这一项中,我们新增以下命令:

rename-command FLUSHALL ""
rename-command FLUSHDB  ""
rename-command CONFIG   ""
rename-command KEYS     ""

而如果想要保留命令,但是不能轻易使用,可以重命名命令来设定:

rename-command FLUSHALL joYAPNXRPmcarcR4ZDgC81TbdkSmLAzRPmcarcR
rename-command FLUSHDB  qf69aZbLAX3cf3ednHM3SOlbpH71yEXLAX3cf3e
rename-command CONFIG   FRaqbC8wSA1XvpFVjCRGryWtIIZS2TRvpFVjCRG
rename-command KEYS     eIiGXix4A2DreBBsQwY6YHkidcDjoYA2DreBBsQ

这样重启服务器后,则需要用新命令来执行操作,否则服务器会报错 unknown command。

说明:对于FLUSHALL命令,需要设置配置文件中appendonly no,否则服务器无法启动。rename-command命名无法直接对线上集群生效。如果需要使用rename-command,必须重启集群。所以建议一开始,就将该配置配置好。

与[转帖]Redis禁用命令、危险命令及规避方法相似的内容:

[转帖]Redis禁用命令、危险命令及规避方法

https://cloud.tencent.com/developer/article/1953714?areaSource=104001.147&traceId=7WZNP412yK3vh7ebw4th0 Redis的危险命令 1、flushdb,清空数据库,而且从不失败 2、flushall,清

[转帖]Redis 禁用 危险命令

一、Redis 危险命令 keys * :虽然其模糊匹配功能使用非常方便也很强大,在小数据量情况下使用没什么问题,数据量大会导致 Redis 锁住及 CPU 飙升,在生产环境建议禁用或者重命名!flushdb :删除 Redis 中当前所在数据库中的所有记录,并且此命令从不会执行失败flushall

[转帖]Redis 可以禁用的高危命令

https://cloud.tencent.com/developer/article/2064127 高危命令禁用 redis一款高并发的内存K-V数据库,提供了好多命令,但是其中有部分对于生产环境来说比较危险,需要禁用掉。 keys 命令 keys 命令执行的时候是需要进行全库扫描的,因为red

[转帖]Redis 7 参数 修改 说明

2022-06-16 14:491800原创Redis 本文链接:https://www.cndba.cn/dave/article/108066 在之前的博客我们介绍了Redis 7 的安装和配置,如下: Linux 7.8 平台 Redis 7 安装并配置开机自启动 操作手册https://ww

[转帖]Redis 7.0 三节点哨兵(Sentinel)高可用 环境搭建手册

2022-06-17 16:253480原创Redis 本文链接:https://www.cndba.cn/dave/article/108088 1 哨兵高可用架构说明 Redis 最早的高可用方案是主从复制,但这种方案存在一个问题,就是当主库宕机后,从库不会自动切成主库,需要人工干预。 所有在主

[转帖]Redis 备份与恢复(RDB/AOF) 说明

2022-06-16 20:364580原创Redis 本文链接:https://www.cndba.cn/dave/article/108068 1 RDB 方式 1.1 RDB 备份恢复说明 Redis 的备份恢复有两种方法:RDB和AOF。 其中RDB 文件是一个经过压缩的二进制文件,有两个R

[转帖]Redis 性能优化的 13 条军规!史上最全

https://zhuanlan.zhihu.com/p/118532234 Redis性能优化实战方案 Redis 是基于单线程模型实现的,也就是 Redis 是使用一个线程来处理所有的客户端请求的,尽管 Redis 使用了非阻塞式 IO,并且对各种命令都做了优化(大部分命令操作时间复杂度都是 O

[转帖]Redis性能调优万字总结,面试必问!

https://zhuanlan.zhihu.com/p/541745804 于哥你好,最近面试挺多的,尤其是在问到java面试题,Redis被问的特别多,比如 Redis的内存模型? Redis的底层数据结构是怎么的? Redis的多线程模型 Redis的集群原理 Redis的雪崩,击穿,穿透怎么

[转帖]Redis连接未释放,造成TCP连接数过多

https://segmentfault.com/a/1190000022704886 早上看到服务器告警通知,TCP连接数比较高,达到5000多,我设置的阈值是5000,正常TCP连接不会这么高,这样的一个阈值我可以提前知道有问题早点解决,不至于后面引起一系列问题,甚至拖垮服务器。 排查 登陆服务

[转帖]Redis客户端Jedis、Lettuce、Redisson

https://www.jianshu.com/p/90a9e2eccd73 在SpringBoot2.x之后,原来使用的jedis被替换为了lettuce Jedis:采用的直连,BIO网络模型 Jedis有一个问题:多个线程使用一个连接的时候线程不安全。 解决思路是: 使用连接池,为每个请求创建