当前位置: 代码网 > 科技>人工智能>数据分析 > zookeeper未授权访问漏洞修复

zookeeper未授权访问漏洞修复

2024年08月02日 数据分析 我要评论
zookeeper进行服务ACL限制访问。

zookeeper默认所有地址可访问,存在安全问题,除升级对应版的最高版本外,还需进行服务acl限制访问。

1、登录zookeeper

进度到zk的安装bin目录

cd  /地址省略/zookeeper3-4.-14/bin

执行命令:

./zkcli.sh -server ip:2181

ip根据自己实际服务器进行填写

登录截图:

2、查看当前权限

执行命令

getacl /

可以看到当前可访问为anyone,所有人可访问,我们需要对它进行限制

3、限制访问设置

命令:

setacl / ip:127.0.0.1:cdrwa,ip:ip1:cdrwa,ip:ip2:cdrwa

其中127.0.01标识本机,ip1和ip2根据实际需求进行灵活调整

cdrwa每个参数代表的意思:c:创建(create)d:删除(delete)r:读取(read)w:写入(write)a:访问(access)

cdrwa也可根据实际需求进行调整

4、校验

同样使用getacl /查看是否设置成功

5退出zk

执行quit退出zk

6补充内容

如果不小心设置失误导致本机没有访问zk的权限,做如下操作

1、在zoo.cfg文件中加上配置:skipacl=yes

2、重启zook后,再使用setacl设置对应的权限

3、确认权限设置好之后,注释配置zoo.cfg配置文件中的skipacl=yes
4、重启zook。

--设置为所有人可访问:

setacl  / world:anyone:cdrwa

【补充内容】:上述限制ip的方式虽然可以限制节点访问,但是未授权依然可以连接,执行nc命令依然可以获取一些信息,比如执行 echo envi | nc <ip> 2181还是可以获取zk环境的信息。

补充一种防火墙限制2181端口访问的措施

******************************************分界线*********************************************************

【注】以下防火墙命令执行需要root账号或者账号拥有 sudo权限,如果是sudo权限,每个命令前面加sudo
#限制所有ip访问2181端口,(第一步)
iptables -i input -p tcp --dport 2181 -j drop

iptables -i input -p tcp --dport 2181 -j reject
#设置可访问2181的ip(第二步)--记得添加本机ip
iptables -i input -s <本机ip> -p tcp --dport 2181 -j accept
iptables -i input -s <授权ip> -p tcp --dport 2181 -j accept

#保存(第三步)
service iptables save
#重启(第四步)
service iptables restart
#打印配置内容
iptables -l

#清除规则
sudo iptables -d input -p tcp --dport 2181 -j reject
这条命令会删除input链中针对端口2181的拒绝(reject)规则。如果你之前设置的是drop规则,你需要将reject替换为drop
sudo iptables -d input -p tcp --dport 8080 -j drop

#验证,在另一台机子上执行以下命令,看是否输出内容
 echo envi | nc 10.190.133.18 2181

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com