为啥要上白金段位
因为有些高级功能只有白金段位才会有,虽然一开始有30天的试用,但30天不够啊
如果不知道 ELK 是干啥的可以看看这个 搭建 ELK 7.x 日志分析平台
开始爆破,上白金
1 | # 先把 x-pack 拷贝出来 |
下面我们需要一个 java 反编译工具,建议使用luyten
(本人用过jd-gui
和jad
反编出来都有问题),找到 org/elasticsearch/license/LicenseVerifier.class
和 org/elasticsearch/xpack/core/XPackBuild.class
反编译得到 LicenseVerifier.java
后,将里面的verifyLicense
和verifyLicense
方法改为如下内容,让许可的验证都返回true
1 | package org.elasticsearch.license; |
反编译得到 XPackBuild.java
后,将里面的 if (path.toString().endsWith(".jar"))
那段语句注释或者删除掉,让程序检测不到jar包被修改过。
1 | package org.elasticsearch.xpack.core; |
注意不要直接复制这些代码,修改仅供参考,有可能其他版本的代码会有点不一样,所以代码参考去改就好了
修改完后,把 LicenseVerifier.java
和 XPackBuild.java
重新编译1
2
3javac -cp "/usr/share/elasticsearch/lib/elasticsearch-7.0.1.jar:/usr/share/elasticsearch/lib/lucene-core-8.0.0.jar:/usr/share/elasticsearch/modules/x-pack-core/x-pack-core-7.0.1.jar:/usr/share/elasticsearch/lib/elasticsearch-core-7.0.1.jar" LicenseVerifier.java
javac -cp "/usr/share/elasticsearch/lib/elasticsearch-7.0.1.jar:/usr/share/elasticsearch/lib/lucene-core-8.0.0.jar:/usr/share/elasticsearch/modules/x-pack-core/x-pack-core-7.0.1.jar:/usr/share/elasticsearch/lib/elasticsearch-core-7.0.1.jar" XPackBuild.java
注意编译需要依赖这些包,所以请根据自己安装的版本去选择这包
编译完成后,将得到的 LicenseVerifier.class
和 XPackBuild.class
覆盖到 org/elasticsearch/license/LicenseVerifier.class
和 org/elasticsearch/xpack/core/XPackBuild.class
最后重新打包jar
1 | cd x-pack-core |
去注册一个免费一年的License https://license.elastic.co/registration,注册完成后会给你发送下载地址
下载之后你会得到一个json文件1
2
3
4
5
6
7
8
9
10
11
12
13{
"license": {
"uid": "~~~~~~~~~~~~~~~~~~~~~~~~~~~~",
"type": "basic",
"issue_date_in_millis": 1557705600000,
"expiry_date_in_millis": 1589414399999,
"max_nodes": 100,
"issued_to": "~~~~~~~~~~~",
"issuer": "Web Form",
"signature": "~~~~~~~~~~~~~~~~~~~~~~~~~~~~",
"start_date_in_millis": 1557705600000
}
}
- 将
type
的参数改为platinum
(即:‘白金版’) - 将
expiry_date_in_millis
的参数改成你想要的过期时间(这里用的是毫秒)可以改为4070883661000
过期时间都是到2099年~~~ - 其他参数尽量不要改
1 | { |
修改 /etc/elasticsearch/elasticsearch.yml
暂时先关闭 xpack
(记得重启elasticsearch)1
xpack.security.enabled: false
在 kibana 中 管理 → 许可管理 → 更新许可
修改 /etc/elasticsearch/elasticsearch.yml
重新打开 xpack
(记得重启elasticsearch)1
xpack.security.enabled: true
更新后显示这样就ok了