redis技术目录
如果redis部署在内网,外部机器访问不到,那么下面的内容不需要看。
如果redis部署在公网,还是稍微看下吧,近期出现的redis安全事件还是挺严重的,大部分机器甚至被黑了。
设置安全主要有几种方法:
1、设置密码
requirepass yourpassword
配置在redis里,密码是明文,这时其他客户端连接redis需要绑定密码才可以访问,Redis的执行效率非常快,外部设备每秒可以测试相当数量的密码。Redis的密码是存储在Redis.conf文件和内部客户端的配置中的,因此不需要管理员记住。所以可以使用相当长的密码。
如果设置了密码,主从复制的时候,也要配置响应的master redis数据库密码。
2、绑定ip
bind ip
可以设置绑定固定的ip访问,也可以绑定多个ip
bind ip1 ip2 #中间是空格
如果绑定了ip,在主从复制时,也要绑定从 redis数据库服务器的ip
3、禁用特殊命令
禁用Redis的一些命令是可行的,或者将他们改名。这样来自客户端的请求就只能执行有限的命令。
在这种情况下,从命令表中重命名命令或者完全隐藏命令是可能的。这个功能可用在Redis.conf配置文件里做为一个声明。例如:
rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
4、修改默认端口号
port 9001
事实上不要瞧不起这个方法,近期的redis安全事件,黑的绝大部分都是6379默认端口,你稍微修改个端口,就会安全很多。
5、启动时不要使用root权限
就算redis被破解了,也只是取得了启动redis用户的权限,但是最好不要使用root去启动redis。一旦redis被黑,那服务器的root权限都被取得就完蛋了。