6.4.6.4 xpack破解
Elasticsearch 6.4.2 X-Pack破解及安装教程
Elastic宣布xpack开源,自6.3版本起,所有的es产品直接集成xpack,无需单独安装,但是依然需要不同级别的license来激活不同的功能
[TOC]
安装X-Pack
正常安装elasticsearch的6.2以上(不包含6.2)版本,安装完成后直接已经集成xpack所有功能,无需单独安装xpack,本文中以通过elastic官方apt源直接安装6.4.2版本为例
破解X-Pack
提取源码
在官网下载elasticsearch-6.4.2的linux版tar.gz包并解压到工作目录
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.tar.gz在以下位置找到要操作的jar包
./elasticsearch/modules/x-pack-core/x-pack-core-6.4.2.jar使用luyten工具对jar包进行反编译
luyten的git项目地址为: https://github.com/deathmarine/Luyten打开jar包后找到两个class文件,分别为
org.elasticsearch.license.LicenseVerifier.classorg.elasticsearch.xpack.core.XPackBuild.class
创建工作目录,如/tmp/crack-xpack
将反编译后的java代码保存到工作目录中,创建同名.java文件
修改代码
LicenseVerifier.java中有两个静态方法,这就是验证授权文件是否有效的方法,我们把它修改为全部返回true 此外还需要删除一行依赖import org.elasticsearch.common.bytes.*;
XPackBuild.java中最后一个静态代码块中的try部分全部删除,这部分会验证jar包是否被修改
编译
编译需要引入elasticsearch-6.4.2中lib目录下的jar包以及x-pack-core-6.4.2.jar本身
操作完成后执行以下命令进行将.java文件编译为.class文件
编译完成后,将得到的.class文件打包回x-pack-core-6.4.2.jar中
执行完毕后,elasticsearch-6.4.2/modules/x-pack-core/x-pack-core-6.4.2.jar即为破解的新包,此时可以再次使用luyten工具进行检查
安装
将破解好的x-pack-core-6.4.2.jar原路径替换到elasticsearch集群的每个节点中,重启集群中的每个接点上的服务
导入license
首先确认xpack.security功能为关闭状态 检查elasticsearch.yml中是否存在以下配置
将此选项设为false后重启集群既可关闭xpack.security功能
在任意一台client节点中,创建license.json文件,
执行以下命令导入lisense
如果返回vaild,破解完成
最后更新于
这有帮助吗?