Press "Enter" to skip to content

zookeeper未授权访问漏洞修复方式

zookeeper(测试zookeeper版本为3.3.6,其它版本暂未测试.主机环境Redhat 6)未授权访问漏洞,漏洞详情如下:

zookeeper的权限概念在这里:https://www.cnblogs.com/linuxbug/p/5023677.html
图片中的解决方式都是通过设置认证用户,但是仅仅设置用户和密码的话集群(Apache Activemq集群,Hadoop集群)会出现问题,所以单单上面的解决方式是不行的。
通过搜索资料,可以通过限制IP只使集群内相关主机能访问2181端口,具体方法如下:
setAcl /zookeeper ip:1.1.1.1:cdrwa,ip:1.1.1.2:cdrwa,ip:1.1.1.3:cdrwa
注意不能写成setAcl /zookeeper ip:1.1.1.1/24:cdrwa 这种方式,这样会报错。 网上很多文章都是这么写的,但是实测发现会报错,设置不了权限。后来无意中看到一篇文章是把每个IP用逗号分开写,试了下居然成功了。
权限设置完成后可通过查看集群日志等方式查看集群运行状况。
或者更简单的方式就是配置防火墙,使集群内机器才能访问2181端口,具体命令如下(配置防火墙需谨慎):
iptables -A INPUT -p tcp -m iprange --src-range 1.1.1.1-1.1.1.25 --dport 2181 -j ACCEPT
iptables -A INPUT -p tcp --dport 2181 -j DROP
service iptables save
service iptables restart
chkconfig iptables on

Be First to Comment

发表评论

电子邮件地址不会被公开。 必填项已用*标注