某一天打开 Kibana 对应的 Monitoring 选项卡的时候,发现提示需要下载新的 license,旧的 license 已经过期了;

退出重新登录 发现禁止登录,提示:Login is disabled because your license has expired. Please extend your license or disable Security in Elasticsearch.

这是因为x-pack的试用期为30天。

1.反编译class文件

  在elasticsearch安装目录plugins/x-pack/找到x-pack-5.0.0.jar文件,将其复制 保存到另一个文件夹中,然后将其 解压:jar -xvf x-pack-5.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;
}
}

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

  重新编译class文件。注意这里我们无需编译整个工程,将原来的x-pack-5.0.0.jar和依赖包加入CLASSPATH,即可完成单个文件的编译。实际上只用到了3个依赖包,如果是用RPM或DEB安装的,直接运行:

javac -cp "/elk/elasticsearch-5.0.0/lib/elasticsearch-5.0.0.jar:/elk/elasticsearch-5.0.0/lib/lucene-core-6.2.0.jar:/elk/elasticsearch-5.0.0/plugins/x-pack/x-pack-5.0.0.jar" LicenseVerifier.java

  注:javac执行时的参数cp 表示classpath 路径,如果多个在windows环境中用 ; 隔开,linux中用 : 隔开;

  把x-pack-5.0.0.jar用压缩文件管理器打开,将里面的LicenseVerifier.class替换掉。再把破解了的jar包部署到各节点上,

  将破解的x-pack-5.0.0.jar文件 拷贝到elasticsearch安装目录plugins/x-pack/下,替换原来的x-pack-5.0.0.jar,启动 elasticsearch、kibana,并重启集群。

3.申请一个免费license

  申请一个免费license(https://license.elastic.co/registration) 注册后可以下载文件,下载后修改,例如:

  主要修改:type改为platinum表示可以使用所有功能 ; expiry_date_in_millis。我这里改了10年 :

{"license":{"uid":"10cf8263-4d23-4e81-b10b-95abfb14b599","type":"platinum","issue_date_in_millis":1490832000000,"expiry_date_in_millis":1806237751991,"max_nodes":100,"issued_to":"www bbb (baiye)","issuer":"Web Form","signature":"AAAAAwAAAA33g9abHznVovDNSXRpAAABmC9ZN0hjZDBGYnVyRXpCOW5Bb3FjZDAxOWpSbTVoMVZwUzRxVk1PSmkxaktJRVl5MUYvUWh3bHZVUTllbXNPbzBUemtnbWpBbmlWRmRZb25KNFlBR2x0TXc2K2p1Y1VtMG1UQU9TRGZVSGRwaEJGUjE3bXd3LzRqZ05iLzRteWFNekdxRGpIYlFwYkJiNUs0U1hTVlJKNVlXekMrSlVUdFIvV0FNeWdOYnlESDc3MWhlY3hSQmdKSjJ2ZTcvYlBFOHhPQlV3ZHdDQ0tHcG5uOElCaDJ4K1hob29xSG85N0kvTWV3THhlQk9NL01VMFRjNDZpZEVXeUtUMXIyMlIveFpJUkk2WUdveEZaME9XWitGUi9WNTZVQW1FMG1DenhZU0ZmeXlZakVEMjZFT2NvOWxpZGlqVmlHNC8rWVVUYzMwRGVySHpIdURzKzFiRDl4TmM1TUp2VTBOUlJZUlAyV0ZVL2kvVk10L0NsbXNFYVZwT3NSU082dFNNa2prQ0ZsclZ4NTltbU1CVE5lR09Bck93V2J1Y3c9PQAAAQBj3vZvK4B2T0MWE3hZSxnMEFANBR5g1bNGDrWUqADXLFVAvtkNqPqsOblFnAtr1o/LLkxe/pDxUFS0zPNDIu3FkQct4OP9jTpxhvB7ukMNSK4SGVv2QfDFEkUkGgVIQoZ4mOaL3JPr3WYhX68uuKgzBSwem7oG0k+dbllbDmEFmo1+yd8uxBSFTiSAaLoA2YedFON5x1tzsBZU6miwrnaFpC7KC2ezTl/0BlRPb7tKsS6cUuj8s2Xrn+yu7h6929L9QU1q3fTqk38EySIPkn+LjJKi7d8NwnbbhNdkj4f3uykBmEE1MtCaHsrZFM2Ry1tdDymWuyaGkz0h+2yc0QcB","start_date_in_millis":1490832000000}}

  将上面json内容保存到license.json文件。

4.安装license 

  查看当前的license:

    curl -XGET -u elastic:changeme 'http://127.0.0.1:9200/_license'

  将编辑好的license.json文件放到服务器,在文件目录下执行:
    curl -XPUT -u elastic:changeme 'http://127.0.0.1:9200/_xpack/license' -d @license.json
  或者下面:
    curl -XPUT -u elastic:changeme 'http://127.0.0.1:9200/_xpack/license?acknowledge=true' -d @license.json

如果出现下面的报错:

{"error":"Content-Type header [application/x-www-form-urlencoded] is not supported","status":406}

则需要在 curl 后 加上 -H "Content-Type: application/json" ,即  curl  -H "Content-Type: application/json"  -XPUT -u elastic:changeme 'http://127.0.0.1:9200/_xpack/license' -d @license.json

重启elasticsearch和kibana .

  打开:http://192.168.100.50:5601 ,可正常登录。

5.参考:

  https://www.cnblogs.com/benwu/articles/6648471.html

  https://blog.csdn.net/lilongsy/article/details/78987784

最新文章

  1. AX7: HOW TO USE TABLE METHOD EXTENSION CLASS
  2. 当webshell不可执行cmshell时 (菜刀的安全模式!)可用此脚本突破执行cmd命令
  3. python: extend (扩展) 与 append (追加) 的差别
  4. JAVA基础知识之NIO.2——Path,Paths,Files
  5. .net 开发人员如何自处
  6. hdu 4165 dp
  7. [改善Java代码]注意方法中传递的参数要求(replaceAll和replace的区别)
  8. alloc & init & dealloc
  9. Java面试题之六
  10. js原生forEach、map与jquery的each、$.each的区别
  11. 移动端解决input focus后键盘弹出,高度被挤压的问题
  12. 最后的配置部分:LNMP+Tomcat
  13. 小米Adnroid默认禁止悬浮框的使用,导致开发的悬浮框无法接收事件
  14. hadoop初学
  15. vue 中获取select 的option的value 直接click?
  16. Luogu P1038 神经网络
  17. 2018-4-5-MEMS
  18. ASP.NET MVC5+EF6+EasyUI 后台管理系统(90)-EF 扩展操作
  19. 【小y设计】二维码条形码打印编辑器
  20. mysql安装登录

热门文章

  1. web.xml 基本配置
  2. js中的extend
  3. win8 X64 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序
  4. Oracle 外键约束子表、父表
  5. 【C#】复制物体后,给副本命名的规则——用正则表达式
  6. 【WPF】对话框/消息弹窗
  7. ubuntu下 apache phpmyadmin 的安装和使用
  8. Android代码内存优化建议-Android官方篇
  9. Hbase rowkey设计一
  10. php插入htm htm插入php的变量