Elasticsearch6.5.2 X-pack破解及安装教程
先正常安装 elasticSearch, kibana。
1. 如果是6.5.2版本,可以直接下载jar文件:https://download.csdn.net/download/bigben0123/10932740。跳过此步。
重写x-pack下的2个类:LicenseVerifier.java和XPackBuild.java
直接拿走重写完的类
链接: https://pan.baidu.com/s/1ESqoZW8eieO7Zdgs31hxsQ 密码: uqnd
覆盖流程
1.用zip软件打开 找到的目标jar包 elasticsearch-6.5.2\modules\x-pack\x-pack-core\x-pack-core-6.5.2.jar。
2.用LicenseVerifier.class
覆盖x-pack-core-6.5.2.jar\org\elasticsearch\license
目录下的同名文件
3.同理用 XPackBuild.class
覆盖 x-pack-core-6.5.2.jar\org\elasticsearch\xpack\core
目录下的同名文件
直接保存成新的jar。替换以前的即可。
2. 在elasticsearch.yml 中 添加一下配置
xpack.security.enabled:false
重启elasticsearch
3. 在kibana的左边菜单 Management-> Licence -> apply trail license。等待几个小时后收到 license,修改如下两项:
"type":"platinum","issue_date_in_millis":1548115200000,"expiry_date_in_millis":3107746200000
4,在kibana的左边菜单 Management-> Licence ->update license即可。
参考:
https://www.plaza4me.com/article/20180825223849878 靠谱
https://www.jianshu.com/p/6acfeabb44f8?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
https://www.jianshu.com/p/1ff67bb363dd
https://blog.csdn.net/q258523454/article/details/82426837
破解原理:
用Luyten 反编译x-pack-core-6.5.2.jar文件。Luyten下载地址:https://github.com/deathmarine/Luyten/releases/tag/v0.5.3。
软件下载下来,打开软件,把x-pack-core-6.5.2.jar 丢进去,就能看到我们jar包的源代码了。
我们需要把2个文件提取出来进行修改。
org.elasticsearch.license.LicenseVerifier
org.elasticsearch.xpack.core.XPackBuild
1、修改LicenseVerifier
LicenseVerifier 中有两个静态方法,这就是验证授权文件是否有效的方法,我们把它修改为全部返回true.
package org.elasticsearch.license; import java.nio.*;
import org.elasticsearch.common.bytes.*;
import java.util.*;
import java.security.*;
import org.elasticsearch.common.xcontent.*;
import org.apache.lucene.util.*;
import org.elasticsearch.core.internal.io.*;
import java.io.*; public class LicenseVerifier
{
public static boolean verifyLicense(final License license, final byte[] encryptedPublicKeyData) {
return true;
} public static boolean verifyLicense(final License license) {
return true;
}
}
2、修改XPackBuild
XPackBuild 中最后一个静态代码块中 try的部分全部删除,这部分会验证jar包是否被修改.
package org.elasticsearch.xpack.core; import org.elasticsearch.common.SuppressForbidden;
import org.elasticsearch.common.io.PathUtils; import java.net.URISyntaxException;
import java.net.URL;
import java.nio.file.Path; public class XPackBuild {
public static final XPackBuild CURRENT;
private String shortHash;
private String date; static {
String shortHash;
String date;
shortHash = "Unknown";
date = "Unknown";
CURRENT = new XPackBuild(shortHash, date);
} @SuppressForbidden(reason = "looks up path of xpack.jar directly")
static Path getElasticsearchCodebase() {
URL url = XPackBuild.class.getProtectionDomain().getCodeSource().getLocation();
try {
return PathUtils.get(url.toURI());
} catch (URISyntaxException bogus) {
throw new RuntimeException(bogus);
}
} XPackBuild(String shortHash, String date) {
this.shortHash = shortHash;
this.date = date;
} public String shortHash() {
return shortHash;
} public String date() {
return date;
}
}
编译修改后的java文件
原文写的是:
- javac -cp ".:./x-pack-core-6.3.2.jar:./elasticsearch-6.4.0/lib/*" LicenseVerifier.java
- javac -cp ".:./x-pack-core-6.3.2.jar:./elasticsearch-6.4.0/lib/*" XPackBuild.java
我使用的是:
- javac -cp "/Users/mac/Documents/elasticsearch-6.4.0/modules/x-pack-core/x-pack-core-6.4.0.jar:/Users/mac/Documents/elasticsearch-6.4.0/lib/*" LicenseVerifier.java
- javac -cp "/Users/mac/Documents/elasticsearch-6.4.0/modules/x-pack-core/x-pack-core-6.4.0.jar:/Users/mac/Documents/elasticsearch-6.4.0/lib/*" XPackBuild.java
需要注意的是,编译这两个文件的时候 需要指定依赖包的位置 如果你的位置和我的有区别,注意修改。
将编译好的class文件重新压回x-pack-core-6.4.0.jar
解压x-pack-core-6.4.0.jar 会得到一个 x-pack-core-6.4.0目录,按照其位置将编译好的2个 class文件放到我们目录里面,替换老的。
- 直接用命令即可
- [unjar] jar -xvf abc.jar
- [jar] jar cf abc.jar input-files
Elasticsearch6.5.2 X-pack破解及安装教程的更多相关文章
- matlab 2016a破解中文版安装教程
之前电脑重装过,所以要重新安装一个matlab,在大三的时候学过matlab,信息老师给的安装包,但是不知道放哪里去了,记忆力不好,找了些网上的教程和下载地址,真的是坑,一些都是不行的,在这里记录下m ...
- loadrunner11 中文破解版安装教程
loadrunner11的安装:http://pan.baidu.com/share/link?shareid=316642707&uk=1395568298 汉化包(下载之后有可能是ISO格 ...
- phpstorm10.0.3破解版安装教程及汉化方法
phpstorm是一个轻量级且便捷的PHP IDE,其旨在提供用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查.不但是php开发的利器,前端开发也是毫不逊色的.下面记录php ...
- VS2015 Visual Assist X 破解版安装教程
前言 此方法适合VS2010~VS2015版本. 安装包下载方法:公众号[视觉IMAX]后台回复「VA助手」,即可得到安装包下载链接. 工作以来,一直在使用VS2015,之前一直根据的网上飘云阁的破解 ...
- Webstorm破解版安装教程
Webstorm破解版: 安装包链接见:https://pan.baidu.com/s/1XJqRtM9C4M8AmH50S9dVDQ 提取码: dah3 内附安装教程, 原创文章,转载请先联系作者
- Linux系列 -- XShell破解版安装教程
目录 一.xshell6商业版安装教程 1. 为什么要用xshell 2. 打开Keygen软件获取注册码 3.安装Xmanager_PowerSuite软件 4.打开康康. 二.XShell远程连接 ...
- SoapUI破解及安装教程
之前学了一段时间的SoapUI,但是好久不用了,这里记录下专业版的破解的流程,后续的学习会不断更新. soapUI安装及破解(这里针对专业版) 下载地址:http://dl.eviware.com/l ...
- MyEclipse2014破解版安装教程
下载安装包和破解程序脚本 1.下载地址 链接:https://pan.baidu.com/s/1XuMweEz602zcoGqwPb2xTA 提取码:idsx 两个文件:myeclipse-pro- ...
- 转载:JIRA_7.13(破解)安装教程
参考:https://blog.csdn.net/weixin_38229356/article/details/84875205 参考2:https://www.codercto.com/a/399 ...
随机推荐
- java新知识系列 六
sleep和wait的区别有: Servlet方法的使用 方法重写的规则,以及两同两小一大原则: DispatcherServlet的解析 依赖注入DU和控制反转Ioc AOP和OOP的区别 Spri ...
- Ext.grid.panel 改变某一行的字体颜色
grid.getStore().addListener('load', handleGridLoadEvent); function handleGridLoadEvent(store, record ...
- linux 按行分割文件
$ sudo awk 'NR%2==1{close(p".txt");++p}{print > p".txt"}' test.txt $ sudo spl ...
- [20190401]隐含参数_mutex_spin_count.txt
[20190401]隐含参数_mutex_spin_count.txt --//上午做了一些测试关于semtimedop函数调用,发现自己上个星期在一些问题上理解错误.--//相关链接:--//htt ...
- 英语口语练习系列-C06-购物
<水调歌头>·苏轼 明月几时有,把酒问青天. 不知天上宫阙,今夕是何年? 我欲乘风归去,又恐琼楼玉宇, 高处不胜寒. 起舞弄清影,何似在人间! 转朱阁,低绮户,照无眠. 不应有恨,何事长向 ...
- 关于c#(vs)dategridview控件继承不能修改的问题
问题描述:前几天写个小项目的时候,用到了一个父窗体,然后继承过来的dategridview控件不管是属性还是事件都不能修改. 如下图所示: 然后我就在网上找资料,但是有关这个问题的资源甚少,或许是我不 ...
- django-debug-toolbar使用指南
好久没发新博客,凑个数... django-debug-toolbar 介绍 django-debug-toolbar 是一组可配置的面板,可显示有关当前请求/响应的各种调试信息,并在单击时显示有关面 ...
- HBase源码实战:CreateRandomStoreFile
/* * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agre ...
- YAML详解
1 YAML简介 YAML,即YAML Ain’t Markup Language的缩写,YAML 是一种简洁的非标记语言.YAML以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简洁 ...
- 监控glusterfs
监控集群状态 [4ajr@elk1 scripts]$ cat glusterfs_peer_status.sh #!/bin/bash peer_status=`sudo gluster peer ...