## 前言
`Elasticearch`简称为`es`,为一个分布式的搜索引擎,默认的`es`部署是没有密码验证的,很容易会出现安全问题。
## 开启密码验证
- 使用`ES`自带的`XPACK`开启密码校验
在`es7.0`版本以后(之前的版本没怎么用过,不太清楚)安装包默认自带了`xpack`功能,所以只需要在`es`包下的`config`目录修改一下es的默认配置文件`elasticsearch.yml`即可,在`elasticsearch.yml`中追加写入以下参数。
```bash
xpack.security.enabled: true
## 加密方式
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true
```
然后重启`es`让配置文件生效,再到`es`包下`bin`目录执行以下命令
```bash
./elasticsearch-setup-passwords interactive
```
运行结果如下:

> 注意,每个账号都必须输入密码,建议使用相同密码。
运行完以后则会出现以上界面,先是提醒你,`es`链接会需要密码,可能会影响现在的使用,再接下来就是会默认的创建6个用户,并让你设置这六个用户的密码(忽略掉用户名,这些用户权限都是相同的)
设置完成以后,这时候再访问`es`的地址,就会提示安全错误信息了,到此,`es`的密码设置完成。

Elasticearch 7.x添加密码验证