elasticsearch之search-guard安装
来源:互联网 发布:python高级编程第3版 编辑:程序博客网 时间:2024/05/18 17:01
elasticsearch 版本基于2.3.4
1.安装
bin/plugin install -b com.floragunn/search-guard-ssl/2.3.4.21
bin/plugin install -b com.floragunn/search-guard-2/2.3.4.12
2.生成证书文件
下载对应版本的search guard-ssl源码
cd search-guard-sshl/example-pki-scripts
gen_client_node_cert.sh 创建客户端证书
gen_node_cert.sh 创建节点证书
gen_root_ca.sh 创建根证书
进入example-pki-scripts/etc目录,里面是证书生成时的一些配置文件,可根据需要修改相应的信息
root-ca.conf 根证书配置
signing-ca.conf 签名证书配置
demo:
0.domainComponent = "www.test.com” 域名
1.domainComponent = "www.test.com" 域名
organizationName = "Test" 组织名称
organizationalUnitName = "Test Root CA" 组织单位名称
commonName = "Test Root CA" 通用名称
生成证书
cd search-guard-ssl/example-pki-scripts修改example.sh文件
如下:
#!/bin/bash
set -e
./clean.sh
./gen_root_ca.sh 123456 123456
./gen_node_cert.sh 0 123456 123456
./gen_node_cert.sh 1 123456 123456
./gen_node_cert.sh 2 123456 123456
./gen_client_node_cert.sh test 123456 123456
参数说明:
./gen_root_ca.sh 12345678 12345678
第一个参数为CA_PASS,即CA密码(根证书密码)
第二个参数为TS_PASS,即TS密码(truststore,信任证书密码)
./gen_node_cert.sh 0 12345678 12345678
第一个参数为node编号,生成证书后的文件名为node-0*
第二个参数为KS_PASS(keystore文件密码)
第三个参数为CA_PASS
./gen_client_node_cert.sh test 12345678
第一个参数为客户端节点名称,生成证书后的文件名为test*
第二个参数为KS_PASS
第三个参数为CA_PASS
运行example.sh会在该目录生成各种证书文件
3.配置证书
1.证书上传到elasticsearch
将example-pki-scripts文件夹中的node-0-keystore.jks和truststore.jks复制到elasticsearch的配置目录中(/etc/elasticsearch)
cp node-0-keystore.jks /etc/elasticsearch
cp truststore.jks /etc/elasticsearch
将example-pki-scripts文件夹中的test-keystore.jks和truststore.jks复制到elasticsearch程序目录下的plugins/search-guard-2/sgconfig下,如果这个节点是主节点,则所有节点的search guard配置都从这个节点中配置,然后分发到其它节点中
cp test-keystore.jks /usr/share/elasticsearch/plugins/search-guard-2/sgconfig/
cp truststore.jks /usr/share/elasticsearch/plugins/search-guard-2/sgconfig/
2.修改elasticsearch配置文件:
vim /etc/elasticsearch/elasticsearch.yml
修改以下配置:
17 cluster.name: test
23 node.name: node-0
54 network.host: 0.0.0.0
# search-guard配置
# 配置ssl
searchguard.ssl.transport.enabled: true
searchguard.ssl.transport.keystore_filepath: node-0-keystore.jks
searchguard.ssl.transport.keystore_password: 12345678
searchguard.ssl.transport.truststore_filepath: truststore.jks
searchguard.ssl.transport.truststore_password: 12345678
searchguard.ssl.transport.enforce_hostname_verification: false
searchguard.ssl.transport.resolve_hostname: false
# 配置http
# http配置,这里我只是为了测试方便,配置完,应该设置为true
searchguard.ssl.http.enabled: false
searchguard.ssl.http.keystore_filepath: node-0-keystore.jks
searchguard.ssl.http.keystore_password: 12345678
searchguard.ssl.http.truststore_filepath: truststore.jks
searchguard.ssl.http.truststore_password: 12345678
searchguard.allow_all_from_loopback: true
# 这里注意,下面的配置一定要和签的客户端证书一致,否则不能插入配置
searchguard.authcz.admin_dn:
- CN=test, OU=client, O=client, L=Test, C=DE
3.配置完后重启elasticsearch
四、将配置写入运行中的elasticsearch
进入到elasticsearch安装目录中
cd /usr/share/elasticsearch/
运行如下命令将配置写入到elasticsearch中:
./plugins/search-guard-2/tools/sgadmin.sh -cn 集群名称 -h hostname -cd plugins/search-guard-2/sgconfig -ks plugins/search-guard-2/sgconfig/admin-keystore.jks -kspass password -ts plugins/search-guard-2/sgconfig/truststore.jks -tspass password -nhnv
hostname:指的是elasticsearch的elasticsearch.yml配置文件中 network.host 设置的值
根据上面的配置,输入的命令如下:
./plugins/search-guard-2/tools/sgadmin.sh -cn test -h 0.0.0.0 -cd plugins/search-guard-2/sgconfig -ks plugins/search-guard-2/sgconfig/test-keystore.jks -kspass 12345678 -ts plugins/search-guard-2/sgconfig/truststore.jks -tspass 12345678 -nhnv
- elasticsearch之search-guard安装
- elasticsearch 安装search guard
- elasticsearch-- search guard安装与配置
- elasticsearch & search guard
- Elasticsearch 5.x 安装 Search Guard 5 插件
- Elasticsearch 5.0 安装Search Guard 5 验证插件
- Elasticsearch search-guard 插件部署
- ElasticSearch——安全 Search Guard
- elasticsearch+kibana实现权限控制-search-guard
- Elasticsearch 免费认证插件Search-guard的部署安装及策略配置
- elasticsearch-2.3.5安装search-guard-2.3.5.15遇到的问题
- Elasticsearch权限监控——search-guard介绍
- Elasticsearch with Search-Guard定时删除旧索引
- elasticsearch之Search API
- [ElasticSearch]Search之分页
- ElasticSearch2.4.2安装search-guard插件
- ES05--search guard安装与配置
- elasticsearch---search in depth之struct search
- U2F协议解析
- 概率统计——五数概括法
- Caused by :java.lang.reflect.InvocationTargetException和Binary XML file line #**错误记录
- 大学生电子设计竞赛总结
- 【Python】Python基础排序算法实现
- elasticsearch之search-guard安装
- 机器学习:kNN近邻算法
- 神经网络贷款风险评估(base on keras and python )
- multimap
- 【Android开发笔记】光速码出一条万能虚线
- 总有你要的编程书单(GitHub )
- 项目导入时报错:The import javax.servlet.http.HttpServletRequest cannot be resolved
- JAVASCRIPT作为功能编程介绍,看看对你有没有帮助
- Ant配置文件build.xml示例