在用kafka_2.13-3.3.1集成的zookeeper时,发现存在未授权访问漏洞,以下是解决授权问题的方法。同理也适用于单独的zookeeper,除了进入zookeeper客户端的命令有所不同,其他过程一样。
1、查看是否有监听2181端口
bash
ss -natpl | egrep '2181'
2、如果没有执行在kafka目录执行
bash
./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
3、进入zk客户端
bash
./bin/zookeeper-shell.sh 127.0.0.1:2181
4、授权账号、密码和权限
css
#可以看到默认是world:anyone 就相当于无权限访问
getAcl /
#添加一个账号密码,账号密码可自定义
addauth digest xxx:yyy
#给 / 根目录设置权限,也可以说是其他目录
setAcl / auth:xxx:yyy:cdrwa
#设置后可以再执行 getAcl / 看下权限是否改过来了
getAcl /
#重启zk
./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties