1.设置帐号和密码
elasticsearch-http-basic和其他ES插件一样,在config/elasticsearch.yml
中统一配置:
配置名 | 默认值 | 说明 |
---|---|---|
http.basic.enabled | true | 开关,开启会接管全部HTTP连接 |
http.basic.user | "admin" | 账号 |
http.basic.password | "admin_pw" | 密码 |
http.basic.ipwhitelist | ["localhost", "127.0.0.1"] | 白名单内的ip访问不需要通过账号和密码,支持ip和主机名,不支持ip区间或正则 |
http.basic.trusted_proxy_chains | [] | 信任代理列表 |
http.basic.log | false | 把无授权的访问事件添加到ES的日志 |
http.basic.xforward | "" | 记载代理路径的header字段名 |
这个需要安装一个http.basic的插件。
插件的安装步骤如下:
-
从elasticsearch-http-basic的发布版下载对应版本的jar包
-
mkdir -p plugins/http-basic; mv elasticsearch-http-basic-x.x.x.jar plugins/http-basic
(注意文件夹的名称) -
重启ES进程
-
验证插件是否生效:
curl localhost:9200/_nodes/[your-node-name]/plugins?pretty=true
(如果看到plugins
列表包含有http-basic-server-plugin
就说明插件生效了)
发现es并不能正常启动,报错 -
Caused by: org.elasticsearch.bootstrap.BootstrapException: java.nio.file.NoSuchFileException: /usr/share/elasticsearch/plugins/http-basic/plugin-descriptor.properties
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:342) ~[elasticsearch-5.6.2.jar:5.6.2]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:132) ~[elasticsearch-5.6.2.jar:5.6.2]
... 6 moreCaused by: java.nio.file.NoSuchFileException: /usr/share/elasticsearch/plugins/http-basic/plugin-descriptor.properties
但并没有找到plugin-descriptor.properties的相关文件
-
也有可以与插件版本有关,git上最新的插修的版本只支持es1.5
http.basic的方式暂时(失败)
2.看es的自身的配置,es6.5有,而本系统es5.6并没有 用户和用户组 的配置。不行
3.使用x-pack
x-pack6.5官网有权限的使用:
es5.6使用x-pack:
bin/elasticsearch-plugins install x-pack