【HDP】zookeeper未授权漏洞修复

目录

一、禁用四字命令

二、ZK-Client增加kerberos


一、禁用四字命令


Zookeeper四字命令的使用方式非常简单,通常有两种方式。第一种是通过Telnet方式,使用Telnet客户端登录ZooKeeper的对外服务端口,然后直接使用四字命令即可;第二种是通过nc方式,如 echo conf|nc localhost 2181。

|------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 命令 | 说明 |
| conf | conf命令用于输出ZooKeeper服务器运行时使用的基本配置信息,包括clientPort、dataDir和tickTime等,以便快速地查看ZooKeeper当前运行时的一些参数。conf命令会根据当前运行模式来决定输出的信息,如果是单机模式就不会输出诸如initLimit、syncLimit、electionAlg和electionPort等集群相关的配置信息。 |
| cons | cons命令用于输出当前这台服务器上所有客户端连接的详细信息,包括每个客户端的客户端IP、会话ID和最后一次与服务器交互的操作类型等。 |
| crst | crst是以一个功能性命令,用于重置所有的客户端连接统计信息。 |
| dump | dump命令用于输出当前集群的所有会话信息,包括这些会话的会话ID,以及每个会话创建的临时节点等信息。如果在leader服务器上执行该命令,还能够看到每个会话的超时时间。 |
| envi | 命令用于输出ZooKeeper所在服务器运行时的环境信息,包括os.version、java.version和user.home等。 |
| ruok | ruok命令用于输出当前ZooKeeper服务器是否正在运行。如果当前服务器正在运行,那么返回"imok",否则没有任何响应输出。ruok命令的输出仅仅只能表明当前服务器是否在运行,准确的说是2181端口打开着,同时四字命令执行流程正常,但不能代表ZooKeeper服务器是否运行正常。 |
| stat | stat命令用于获取ZooKeeper服务器的运行时状态信息,包括基本的ZooKeeper版本、打包信息、运行时角色、集群数据节点个数等信息。另外还会将当前服务器的客户端连接信息打印出来。 |
| srvr | srvr命令和stat命令的功能一致,唯一的区别的是srvr不会将客户端的连接情况输出,仅仅输出服务器自身的信息。 |
| srst | srst是一个功能性的命令,用于重置所有服务器的统计信息。 |
| wchs | wchs命令用于输出当前服务器上管理的Watcher的概要信息。 |
| wchc | wchc命令用于输出当前服务器上管理的Watcher的详细信息,以会话为单位进行归组,同时列出被该会话注册了Watcher的节点路径。 |
| wchp | wchp命令和wchc命令非常类似,也是用于输出当前服务器上管理的Watcher的详细信息,不同点在于wchp命令的输出信息以节点路径为单位进行归组。 |
| mntr | mntr命令用于输出比stat命令更为详尽的服务器统计信息,包括请求处理的延迟情况、服务器内存数据库大小和集群的数据同步情况。在输出结果中,每一行都是一个key-value的键值对。如果在Leader服务器上执行该命令还可以获取到更多信息。 |

echo envi | nc IP 2181

HDP - zookeeper 3.4.6   禁用四字命令 4lw.commands.whitelist=ruok

ambari web中zookeeper 中增加zoo.cfg配置,配置完后重启zookeeper

执行如下命令可以看到 获取不到环境信息了


二、ZK-Client增加kerberos


kerberos服务器生成ZK客户端principle和keytab

kadmin.local -q "addprinc -randkey zkcli@WINNER.COM"
kadmin.local -q "xst -k /etc/security/keytabs/zkclient.service.keytab zkcli@WINNER.COM"

增加配置文件/usr/hdp/3.1.4.0-315/zookeeper/conf/jaas.conf

Client {
 com.sun.security.auth.module.Krb5LoginModule required
 useKeyTab=true
 keyTab="/etc/security/keytabs/zkclient.service.keytab"
 storeKey=true
 useTicketCache=false
 principal="zkcli@WINNER.COM";
};

ambari web中zookeeper 中修改env 配置,指定zkclient jaas文件路径

修改 完成后重启zookeeper。

相关推荐
机器人梦想家18 分钟前
resolvectl和resolvconf的区别及用法(dns问题排查及解决)
linux
来自人间的烟火35 分钟前
centos离线安装nvm
linux·运维·服务器
anddddoooo1 小时前
vulnhub(13):Digitalworld.local JOY(ftp 的未授权文件读写漏洞、文件覆盖提权)
linux·网络·安全·web安全·网络安全
埋头编程~1 小时前
【Linux】常用指令(下)(内含more、less、 head、tail、date、find、grep、zip、tar以及学习笔记)
linux·学习·less
葫芦娃你好我是皮卡丘2 小时前
流浪软件uniaccess agent 删除
linux·操作系统
Vacancy空白2 小时前
tomcat项目【jvm内存溢出】
linux·jvm·tomcat
Smaller、FL2 小时前
linux:chown用法详解
linux·运维·服务器
轻松Ai享生活2 小时前
partprobe 与 partx 的详细比较
linux
x66ccff3 小时前
【linux】轻松掌握文件管理:安装Ranger并设置Micro为默认编辑器
linux·运维·编辑器
2401_826097623 小时前
linux-vim的使用
linux·运维·vim