Redis如何禁用高危命令
- 高危命令
- 禁用或重命名
对于生产环境中使用的Redis一定要禁用一些高危命令,避免因误操作而造成的巨大损失。
高危命令
1. KEYS # 虽然该命令的模糊匹配功能很强大,但只适用于小数据量,当数据量很大时会导致Redis锁住及CPU飙升,建议禁用或重命名
2. FLUSHDB # 删除Redis中当前所在数据库中的所有记录,并且此命令不会执行失败
3. FLUSHALL # 删除Redis中所有数据库的记录,并且此命令不会失败
4. CONFIG # 客户端可修改Redis配置
禁用或重命名
在配置文件redis.conf中找到SECURITY区域,添加如下命令
- 禁用命令
rename-command KEYS ""
rename-command FLUSHALL ""
rename-command FLUSHDB ""
rename-command CONFIG ""
rename-command EVAL ""
- 重命名命令
rename-command KEYS "XXXXX" # XXXXX可用任意随机字符串代替
rename-command FLUSHALL "XXXXY"
rename-command FLUSHDB "XXXXXZ"
rename-command CONFIG "XXXXXX"
rename-command EVAL "YYYYY"