x-pack6.3破解
elk6.3版本之后,x-pack都是默認安裝,無需install
分別創建兩個文件
vim LicenseVerifier.java
1 package org.elasticsearch.license; 2 import java.nio.*; import java.util.*; 3 import java.security.*; 4 import org.elasticsearch.common.xcontent.*; 5 import org.apache.lucene.util.*; 6 import org.elasticsearch.common.io.*; 7 import java.io.*; 8 9 public class LicenseVerifier { 10 public static boolean verifyLicense(final License license, final byte[] encryptedPublicKeyData) { 11 return true; 12 } 13 14 public static boolean verifyLicense(final License license) { 15 return true; 16 } 17 }
vim XPackBuild.java
1 package org.elasticsearch.xpack.core; 2 import org.elasticsearch.common.io.*; 3 import java.net.*; 4 import org.elasticsearch.common.*; 5 import java.nio.file.*; 6 import java.io.*; 7 import java.util.jar.*; 8 public class XPackBuild { 9 public static final XPackBuild CURRENT; 10 private String shortHash; 11 private String date; 12 @SuppressForbidden(reason = "looks up path of xpack.jar directly") static Path getElasticsearchCodebase() { 13 final URL url = XPackBuild.class.getProtectionDomain().getCodeSource().getLocation(); 14 try { return PathUtils.get(url.toURI()); } 15 catch (URISyntaxException bogus) { 16 throw new RuntimeException(bogus); } 17 } 18 19 XPackBuild(final String shortHash, final String date) { 20 this.shortHash = shortHash; 21 this.date = date; 22 } 23 24 public String shortHash() { 25 return this.shortHash; 26 } 27 public String date(){ 28 return this.date; 29 } 30 31 static { 32 final Path path = getElasticsearchCodebase(); 33 String shortHash = null; 34 String date = null; 35 Label_0157: { shortHash = "Unknown"; date = "Unknown"; 36 } 37 38 CURRENT = new XPackBuild(shortHash, date); 39 } 40 }
將剛創建的兩個java包打包成class文件,我們需要做的就是替換這兩個class文件(因里面需要引用到其他的jar,故需要用到javac -cp命令)
javac -cp "/usr/local/ELK/elasticsearch-6.3.0/lib/elasticsearch-6.3.0.jar:/usr/local/ELK/elasticsearch-6.3.0/lib/lucene-core-7.3.1.jar:/usr/local/ELK/elasticsearch-6.3.0/modules/x-pack/x-pack-core/x-pack-core-6.3.0.jar" LicenseVerifier.java
javac -cp "/usr/local/ELK/elasticsearch-6.3.0/lib/elasticsearch-6.3.0.jar:/usr/local/ELK/elasticsearch-6.3.0/lib/lucene-core-7.3.1.jar:/usr/local/ELK/elasticsearch-6.3.0/modules/x-pack/x-pack-core/x-pack-core-6.3.0.jar:/usr/local/ELK/elasticsearch-6.3.0/lib/elasticsearch-core-6.3.0.jar" XPackBuild.java
會生成2個class文件
LicenseVerifier.class
XPackBuild.class
把本來的文件給解壓出來,然后覆蓋
cp -a /usr/local/ELK/elasticsearch-6.3.0/modules/x-pack/x-pack-core/x-pack-core-6.3.0.jar .
jar -xf x-pack-core-6.3.0.jar
rm -rf LicenseVerifier.java XPackBuild.java x-pack-core-6.3.0.jar
cp -a LicenseVerifier.class org/elasticsearch/license/
cp -a XPackBuild.class org/elasticsearch/xpack/core/
rm -rf LicenseVerifier.class XPackBuild.class
jar -cvf x-pack-core-6.3.0.jar *
cp -a x-pack-core-6.3.0.jar /usr/local/ELK/elasticsearch-6.3.0/modules/x-pack/x-pack-core/
啟動elasticsearch
sudo -u elk ./elasticsearch -d
顯示此頁面,則說明x-pack已經正常使用
/usr/local/ELK/elasticsearch-6.3.0/bin/elasticsearch-setup-passwords interactive 用這條命令設置賬號密碼
同時編輯好kibana的賬號密碼,啟動kibana
首先編輯好一個自己生成的文件 license.json
{"license":{"uid":"2e44e23c-7087-447b-9a0e-398b8b7a917c","type":"platinum","issue_date_in_millis":1532649600000,"expiry_date_in_millis":2544271999999,"max_nodes":100,"issued_to":"han jiang (www.zfcloud.com)","issuer":"Web Form","signature":"AAAAAwAAAA2elPtByKMPXHGshznoAAABmC9ZN0hjZDBGYnVyRXpCOW5Bb3FjZDAxOWpSbTVoMVZwUzRxVk1PSmkxaktJRVl5MUYvUWh3bHZVUTllbXNPbzBUemtnbWpBbmlWRmRZb25KNFlBR2x0TXc2K2p1Y1VtMG1UQU9TRGZVSGRwaEJGUjE3bXd3LzRqZ05iLzRteWFNekdxRGpIYlFwYkJiNUs0U1hTVlJKNVlXekMrSlVUdFIvV0FNeWdOYnlESDc3MWhlY3hSQmdKSjJ2ZTcvYlBFOHhPQlV3ZHdDQ0tHcG5uOElCaDJ4K1hob29xSG85N0kvTWV3THhlQk9NL01VMFRjNDZpZEVXeUtUMXIyMlIveFpJUkk2WUdveEZaME9XWitGUi9WNTZVQW1FMG1DenhZU0ZmeXlZakVEMjZFT2NvOWxpZGlqVmlHNC8rWVVUYzMwRGVySHpIdURzKzFiRDl4TmM1TUp2VTBOUlJZUlAyV0ZVL2kvVk10L0NsbXNFYVZwT3NSU082dFNNa2prQ0ZsclZ4NTltbU1CVE5lR09Bck93V2J1Y3c9PQAAAQCDbfLHMEJ/Bp4sIDNuTFk9IyxaUaxxxs3/EjU7urcHaU8X9tlxUICA2g4vnIcJ/nPcsZKxfq+j3wriz0DGtL0c4At2tzMEEuIdi1J7hLUxJz1GzQYCfaV84mIHeSeBObaTJF7ic03ef0t8kMztMk17/7/+mJWacqk9GES/wAQfaLzGxxX38sj6rpSG/jMlve7EIFHiGb22jGp8NDGuneooddESvrUth5lrm3tDTPWtM5Vf/RvTUJy4LX3PJsqrgZscx0n0cbXtjDHU4SAyvZ02govNAeZZFMKgmGXnLqpWXJGX3GOeN4I2xxky03NR4mPtPogsoA7EDALcIXFe+wr4","start_date_in_millis":1532649600000}
此處導入license.json文件
或者使用命令行導入
curl -XPUT -u elastic 'http://127.0.0.1:9200/_xpack/license' -H "Content-Type: application/json" -d @license.json
查看是否為白金會員
curl -XGET -u elastic localhost:9200/_license
看到此處說明破解成功。。