Elasticsearch(7.4.0)安全配置
1.版本选择
从 6.8.0 和 7.1.0 版本开始, Elastic Stack安全功能免费提供。
2.Elasticsearch安装配置
1.下载Elasticsearch安装包并解压到linux
2.分配用户权限 (Elasticsearch默认不允许root用户启动)
## 已有用户可直接执行 3.4 步即可
1. adduser testa # 创建用户 adduser 用户名
2. passwd 123456 # 设置密码 需要输入两次
3. chown -R testa elasticsearch-7.4.0 # 给用户分配权限 chown -R 用户名 文件夹名
4. su elasticsearch # 切换用户
3.更改jdk 版本 bin/elasticsearch (后续 全配置生成密码时,要求最低jdk11,Elasticsearch7之后会自带高版本jdk,只需将Elasticsearch默认 jdk路径指向其自带的高版本jdk即可)
## 向 es/bin 下的 elasticsearch 文件 中加入 以下内容 vi elasticsearch
export JAVA_HOME=/home/es/elasticsearch-7.4.0/jdk/ # es 自带jdk路径
export PATH=$JAVA_HOME/bin:$PATH
if [ -x "$JAVA_HOME/bin/java" ]; then
JAVA="/home/es/elasticsearch-7.4.0/jdk/bin/java" # es 自带jdk路径
else
JAVA=`which java`
fi
4.更改默认内存 以及 jdk 11 对应的垃圾收集器 config/jvm.options
## elasticsearch默认启动占用 1g 内存 (内存够用可忽略第一步)
# 1.修改 config目录 下的 jvm.options 文件 vi jvm.options
-Xms256m
-Xmx256m
# 2.修改垃圾收集器为 jdk 11 默认使用的 G1 垃圾收集器()
# 将 -XX:+UseConcMarkSweepGC 改为
-XX:+UseG1GC
5.生成一些允许节点安全通信的证书
# 成功后 config 目录下会多出 elastic-certificates.p12 个文件
bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""
6.更改 config/elasticsearch.yml
network.host参数设置
## network.host: 当前es节点绑定的ip地址 (开放对外访问)
# 将 ntwork.host: 192.168.0.1 改为
network.host: 0.0.0.0
# 配置的内容要与 node.name 里面指定的值对应
# 将 cluster.initial_master_nodes: ["node-1", "node-2"] 改为
cluster.initial_master_nodes: ["node-1"]
# 配置 x-pack 进行安全配置(在yml文件末尾加上以下内容,注意yml语法:后有一空格)
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
7.生成随机密码
# 生成随机账号密码 也可将 auto 改为 interactive 手动定义密码
bin/elasticsearch-setup-passwords auto
8.启动es 登录
# bin 目录下执行 启动es
./elasticsearch -d
# 输入上面生成的账号密码 即可登录成功
# 测试 是否成功
curl localhost:9200
# 查看 elasticsearch 是否启动
ps -ef | grep elastic
# 杀死启动的进程
kill -9 进程id
# 重启 elasticsearch
sh elasticsearch -d
3.Kibana安装配置
1.下载Kibana安装包并解压到linux
2.分配用户权限和 Elasticsearch 配置权限类似
chown -R testa Kibana-7.4.0 # 给用户分配权限 chown -R 用户名 文件夹名
su elasticsearch # 切换用户
3.更改配置config/kibana.yml
# 修改 config/kibana.yml
# 将 server.host: "localhost" 改为
server.host: "10.168.2.201" # 10.168.2.201 本机ip地址
# kibana 中文显示,可忽略
i18n.locale: "zh-CN"
# elasticsearch第七步中生成的账号密码( 使用的是 kibana 用户 )
elasticsearch.username: "kibana"
elasticsearch.password: "MW8xmrIA0aQKkDrlUwGf"
4.启动kibana
## bin 目录下
# 后台启动
nohup ./kibana
# 前台启动
./kibana
# 启动成功后 输入之前elasticsearch中生成的账号密码即可登录成功