热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

破解x-pack6.0和更新许可证(License)

概要x-pack首次安装可以免费使用一年,过期之后登陆会有如下提示:#http:192.168.0.166:5601loginLoginisdisabledbecause

概要

x-pack首次安装可以免费使用一年,过期之后登陆会有如下提示:

# http://192.168.0.166:5601/login
Login is disabled because your license has expired.
Please extend your license or disable Security in Elasticsearch.

证书过期

正常情况下应该是这样的:
正常登陆

破解后的x-pack压缩包下载地址:http://download.csdn.net/download/lilongsy/10191680

环境

Ubuntu 16.04.2 LTS
JDK 1.8.0_131
XShell 5
Luyten 0.5.0
Elasticsearch 6.0
Kibana 6.0
Logstash 6.0
x-pack 6.0
注意:
不要在windows下加压缩jar包,要使用jar命令解压缩jar包。
x-pack 6.0.0 没有默认密码,需要自动生成密码:

bin/x-pack/setup-passwords auto

破解

反编译class文件

在elasticsearch安装目录plugins/x-pack/找到x-pack-6.0.0.jar文件。

# 新建测试目录
mkdir test

# 剪切到测试目录
mv /usr/local/elasticsearch/plugins/x-pack/x-pack-6.0.0.jar test/

# 切换到测试目录
cd test/

# 解压jar包
jar -xvf x-pack-6.0.0.jar

# 移除jar包
rm x-pack-6.0.0.jar

找到文件org.elasticsearch/license/LicenseVerifier.class,并用Luyten(jd-gui不准)反编译,并拷贝内容到新建的文件LicenseVerifier.java,内容如下:

package org.elasticsearch.license;

public class LicenseVerifier
{

public static boolean verifyLicense(final License license, final byte[] encryptedPublicKeyData) {
return true;
}

public static boolean verifyLicense(final License license) {
return true;
}
}

在Linux任意目录下重新编译LicenseVerifier.java

javac -cp "/usr/local/elasticsearch/lib/elasticsearch-6.0.0.jar:
/usr/local/elasticsearch/lib/lucene-core-7.0.1.jar:
/usr/local/elasticsearch/plugins/x-pack/x-pack-6.0.0.jar" LicenseVerifier.java

替换原来的class文件“

cp ../LicenseVerifier.class org/elasticsearch/license/

# 重新打包jar包
jar -cvf x-pack-6.0.0.jar ./*

# 覆盖原来x-pack的jar包
mv x-pack-6.0.0.jar /usr/local/elasticsearch/plugins/x-pack

配置新的license文件

{"license":{
"uid":"aaa",
"type":"platinum",
"issue_date_in_millis":1515024000000,
"expiry_date_in_millis":1596646399999,
"max_nodes":100,
"issued_to":"aaa",
"issuer":"Web Form",
"signature":"111",
"start_date_in_millis":1515024000000
}
}

这里配置过期日期截至到2020年,白金版(platinum)。
保存文件为:license.json

更新License文件

因为elasticsearch 6.0.0,现在更新license文件时,要么配置SSL\TLS,要么就禁用security。
更新之前先配置elasticsearch.yml,加入:

xpack.security.enabled: false
curl -XPUT -u elastic:changeme "http://192.168.0.166:9200/_xpack/license?acknowledge=true" -d @license.json

生效之后,再开启security,并开启SSL\TLS:

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

最后重启elasticsearch。

查看License状态:

curl -XGET -u elastic:changeme "http://192.168.0.166:9200/_license"

参考

  • centos6安装elasticsearch6错误笔记
  • x-pack 5破解
  • 忘记密码
  • 申请免费License
  • x-pack授权区别

推荐阅读
  • andr ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • MQTT技术周报:硬件连接与协议解析
    本周开发笔记重点介绍了在新项目中使用MQTT协议进行硬件连接的技术细节,涵盖其特性、原理及实现步骤。 ... [详细]
  • 本文介绍如何使用阿里云的fastjson库解析包含时间戳、IP地址和参数等信息的JSON格式文本,并进行数据处理和保存。 ... [详细]
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
  • 在 Flutter 开发过程中,开发者经常会遇到 Widget 构造函数中的可选参数 Key。对于初学者来说,理解 Key 的作用和使用场景可能是一个挑战。本文将详细探讨 Key 的概念及其应用场景,并通过实例帮助你更好地掌握这一重要工具。 ... [详细]
  • JavaScript 基础语法指南
    本文详细介绍了 JavaScript 的基础语法,包括变量、数据类型、运算符、语句和函数等内容,旨在为初学者提供全面的入门指导。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • Java 类成员初始化顺序与数组创建
    本文探讨了Java中类成员的初始化顺序、静态引入、可变参数以及finalize方法的应用。通过具体的代码示例,详细解释了这些概念及其在实际编程中的使用。 ... [详细]
  • c# – UWP:BrightnessOverride StartOverride逻辑 ... [详细]
  • 本文详细介绍了如何构建一个高效的UI管理系统,集中处理UI页面的打开、关闭、层级管理和页面跳转等问题。通过UIManager统一管理外部切换逻辑,实现功能逻辑分散化和代码复用,支持多人协作开发。 ... [详细]
  • 本文介绍如何使用 NSTimer 实现倒计时功能,详细讲解了初始化方法、参数配置以及具体实现步骤。通过示例代码展示如何创建和管理定时器,确保在指定时间间隔内执行特定任务。 ... [详细]
  • 本文详细介绍了 Apache Jena 库中的 Txn.executeWrite 方法,通过多个实际代码示例展示了其在不同场景下的应用,帮助开发者更好地理解和使用该方法。 ... [详细]
  • 实体映射最强工具类:MapStruct真香 ... [详细]
author-avatar
Ww不孤单_584
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有