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.class

  • org.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.2lib目录下的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,破解完成

最后更新于

这有帮助吗?