当前位置: 首页 > news >正文

X-PACK详解

 


启用和禁用
启用和禁用X-Pack功能
默认情况下,所有X-Pack功能都被启用。您可以启用或禁用特定的X-Pack功能elasticsearch.yml,kibana.yml以及logstash.yml 配置文件。
设置 描述
xpack.graph.enabled 设置为false禁用X-Pack图形功能。
xpack.ml.enabled 设置为false禁用X-Pack机器学习功能。
xpack.monitoring.enabled 设置为false禁用X-Pack监视功能。
xpack.reporting.enabled 设置为false禁用X-Pack报告功能。
xpack.security.enabled 设置为false禁用X-Pack安全功能。
xpack.watcher.enabled 设置false为禁用观察器。


Run bin/kibana-plugin in your Kibana installation directory.
bin/kibana-plugin install x-pack
The plugin install scripts require direct internet access to download and install X-Pack. If your server doesn’t have internet access, specify the location of the X-Pack zip file that you downloaded to a temporary directory.
bin/kibana-plugin install file:///path/to/file/x-pack-6.2.4.zip
The Kibana server needs to be able to write to files in the optimize directory. If you’re using sudo or su, run the plugin installation as the built-in kibana user. For example:
sudo -u kibana bin/kibana-plugin install x-pack
For more information, see Installing Plugins.

密码
也就是:
bin/x-pack/setup-passwords auto
1
如果想自己来指定密码的话,执行:
bin/x-pack/setup-passwords interactive

也可以使用shell 终端进行管理:
修改elastic用户的密码:
curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/elastic/_password' -d '{
"password" : "123456"
}'
修改kibana用户的密码:
curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/kibana/_password' -d '{
"password" : "123456"
}'
创建用户组和角色,创建所属用户
eg:创建beats_admin用户组,该用户组对filebeat*有all权限,对.kibana*有manage,read,index权限
curl -XPOST -u elastic 'localhost:9200/_xpack/security/role/beats_admin' -d '{
"indices" : [
{
"names" : [ "filebeat*" ],
"privileges" : [ "all" ]
},
{
"names" : [ ".kibana*" ],
"privileges" : [ "manage", "read", "index" ]
}
]
}'
创建jockbeat用户,密码是jockbeat
curl -XPOST -u elastic 'localhost:9200/_xpack/security/user/jockbeat' -d '{
"password" : "jockbeat",
"full_name" : "jock beat",
"email" : "john.doe@anony.mous",
"roles" : [ "beats_admin" ]
}'

 

1.解压 x-pack-6.2.3.zip 进入elasticsearch目录,找到x-pack-core-6.2.3.jar,如果如果已经安装过x-pack插件可以在elasticsearch-6.2.3/plugins/x-pack/x-pack-core/目录下找到
2.解压jar包,然后找到如下两个class文件,使用luyten反编译
org/elasticsearch/license/LicenseVerifier.class
org/elasticsearch/xpack/core/XPackBuild.class
3.将反编译后的java 代码复制到自己的IDE中,按照同样的包名创建pack(可以直接创建如下两个文件,省略第二部)
(1)LicenseVerifier 中有两个静态方法,这就是验证授权文件是否有效的方法,我们把它修改为全部返回true.
# cat LicenseVerifier.java
package org.elasticsearch.license;

import java.nio.*;
import java.util.*;
import java.security.*;
import org.elasticsearch.common.xcontent.*;
import org.apache.lucene.util.*;
import org.elasticsearch.common.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 中 最后一个静态代码块中 try的部分全部删除,这部分会验证jar包是否被修改
# cat XPackBuild.java
package org.elasticsearch.xpack.core;
import org.elasticsearch.common.io.*;
import java.net.*;
import org.elasticsearch.common.*;
import java.nio.file.*;
import java.io.*;
import java.util.jar.*;
public class XPackBuild
{
public static final XPackBuild CURRENT;
private String shortHash;
private String date;
@SuppressForbidden(reason = "looks up path of xpack.jar directly")
static Path getElasticsearchCodebase() {
final URL url = XPackBuild.class.getProtectionDomain().getCodeSource().getLocation();
try {
return PathUtils.get(url.toURI());
}
catch (URISyntaxException bogus) {
throw new RuntimeException(bogus);
}
}
XPackBuild(final String shortHash, final String date) {
this.shortHash = shortHash;
this.date = date;
}
public String shortHash() {
return this.shortHash;
}
public String date() {
return this.date;
}
static {
final Path path = getElasticsearchCodebase();
String shortHash = null;
String date = null;
Label_0157: {
shortHash = "Unknown";
date = "Unknown";
}
CURRENT = new XPackBuild(shortHash, date);
}
}4.编译这两个文件
我们不需要编译整个项目,只需要编译这两个文件,所以要把依赖添加到classpath中,依赖也与之前有所变化,之前只需要x-pack 包本身,现在需要引入 elasticsearch 6.2.3 中 lib 目录下的jar包 以及 x-pack-core-6.2.3.jar 本身
javac -cp "/usr/local/elk/elasticsearch-6.2.3/lib/elasticsearch-6.2.3.jar:/usr/local/elk/elasticsearch-6.2.3/lib/lucene-core-7.2.1.jar:/usr/local/elk/elasticsearch-6.2.3/plugins/x-pack/x-pack-core/x-pack-core-6.2.3.jar" LicenseVerifier.java
javac -cp "/usr/local/elk/elasticsearch-6.2.3/lib/elasticsearch-6.2.3.jar:/usr/local/elk/elasticsearch-6.2.3/lib/lucene-core-7.2.1.jar:/usr/local/elk/elasticsearch-6.2.3/plugins/x-pack/x-pack-core/x-pack-core-6.2.3.jar:/usr/local/elk/elasticsearch-6.2.3/lib/elasticsearch-core-6.2.3.jar" XPackBuild.java
1
2
5.使用重新编译的两个class文件替换原有的class文件,然后重新打jar包
jar -cvf x-pack-core-6.2.3.jar ./*
1
6.将破解好的x-pack-core-6.2.3.jar替换elasticsearch-6.2.3/plugins/x-pack/x-pack-core/目录下原有的jar包即可。
7.更新license:
去官网申请免费license,会发邮件给你进行下载;
将下载的文件重命名为license.json,并做如下修改:
"type":"platinum" #白金版
"expiry_date_in_millis":2524579200999 #截止日期 2050年
或者将license文件上传到服务器通过命令导入:
curl -XPUT -u elastic 'http://192.168.20.101:9200/_xpack/license' -H "Content-Type: application/json" -d @license.json
或者
curl -XPUT -u elastic 'http://192.168.20.60:9200/_xpack/license?acknowledge=true' -H "Content-Type: application/json" -d @license.json
注意:
elasticsearch 6.2.4中默认开启了安全验证,我们暂时修改配置文件以方便导入自己的文件
在elasticsearch.yml 中 添加一下配置
xpack.security.enabled:false

转载于:https://www.cnblogs.com/luoyan01/p/9734310.html

相关文章:

  • 对ASP.NET 2.0的预编译功能有点不满
  • 【模板】有理数取余
  • [导入]SqlHelper的几个细节(原创)
  • HDU_5783_DivideTheSequence
  • 网上求职增加简历点击率
  • [BZOJ1060][ZJOI2007]时态同步 树形dp
  • 2004-3-26+ 数据库连接字符串的简易表示法
  • Python基础-----函数式编程含义及特点(及尾递归)
  • 第一次用.net2.0 LOGIN登陆控件的困惑和解决方法。
  • docker 容器详解
  • 2分分页处理存储过程通用存储过程
  • 洛谷P3379 【模板】最近公共祖先(LCA)(dfs序+倍增)
  • QTP关于验证码的应用解决方法之一
  • [Swift]LeetCode217. 存在重复元素 | Contains Duplicate
  • 网管日志-06.07.18
  • 10个确保微服务与容器安全的最佳实践
  • Android Volley源码解析
  • CNN 在图像分割中的简史:从 R-CNN 到 Mask R-CNN
  • Java 网络编程(2):UDP 的使用
  • Javascript编码规范
  • JavaScript标准库系列——Math对象和Date对象(二)
  • JS学习笔记——闭包
  • MQ框架的比较
  • Object.assign方法不能实现深复制
  • scala基础语法(二)
  • SOFAMosn配置模型
  • 基于Vue2全家桶的移动端AppDEMO实现
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • Nginx实现动静分离
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • ​Python 3 新特性:类型注解
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • ​如何在iOS手机上查看应用日志
  • #宝哥教你#查看jquery绑定的事件函数
  • (1)(1.13) SiK无线电高级配置(五)
  • (2)MFC+openGL单文档框架glFrame
  • (3)选择元素——(17)练习(Exercises)
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (转)视频码率,帧率和分辨率的联系与区别
  • .Net接口调试与案例
  • .Net下的签名与混淆
  • .NET中使用Redis (二)
  • @EnableAsync和@Async开始异步任务支持
  • @EnableConfigurationProperties注解使用
  • @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
  • [ vulhub漏洞复现篇 ] Django SQL注入漏洞复现 CVE-2021-35042
  • [2008][note]腔内级联拉曼发射的,二极管泵浦多频调Q laser——
  • [Bugku]密码???[writeup]
  • [C#]使用PaddleInference图片旋转四种角度检测
  • [C++随笔录] 红黑树
  • [CSDN首发]鱿鱼游戏的具体玩法详细介绍
  • [Delphi]一个功能完备的国密SM4类(TSM4)[20230329更新]
  • [IE编程] 多页面基于IE内核浏览器的代码示例