X-pack安装
1.
Install X-Pack into Elasticsearch
docker exec -it anyrobot-store /bin/bash
bin/elasticsearch-plugin install x-pack
Start Elasticsearch
bin/elasticsearch
2
权限问题: Permission denied
docker exec -it anyrobot-web5 /bin/bash
cd opt/kibana/bin
chmod u+x kibana-plugin
Install X-Pack into Kibana
cd opt/kibana/
bin/kibana-plugin install x-pack
Start Kibana
bin/kibana
3
- Log in as the built-in elastic user with the password changeme.
4
功能一:
安全:
登录:
主页:
管理:
功能二:
生成PDF文档
功能三:
监视:
功能四:
图型:
4.
Securing Elasticsearch and Kibana
防止未经授权的访问
保持数据完整性
维护审计跟踪
X-包安全提供使您能够快速密码保护您的群集的独立身份验证机制。如果您已经使用 LDAP,Active Directory 或 PKI 管理用户在您的组织中,X 包安全是能够与那些执行用户身份验证的系统集成。
在许多情况下,简单地对用户进行身份验证是不够的。你也需要一种方法来控制哪些数据用户可以访问和什么他们可以执行的任务。X-包安全使您可以授权用户通过将访问权限分配给角色,并将这些角色分配给用户。例如,这种基于角色的访问控制机制(又名 RBAC) 使您能够指定用户 kandorra 可以只执行读取的操作的事件索引和不能做任何事都与其他指数。
X-包安全还支持基于 IP 的授权。你可以白名单和黑名单的特定 IP 地址或子网来控制对服务器的网络级访问。
- Install X-Pack and start Elasticsearch and Kibana.
-
Change the passwords of the built in
kibana
andelastic
users:curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/elastic/_password' -d '{ "password" : "elasticpassword" }' curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/kibana/_password' -d '{ "password" : "kibanapassword" }'
The default password for theelastic
user ischangeme
. - 设置角色和用户,以控制对 Elasticsearch 和 Kibana 的访问。例如,若要授予李四完全访问所有指数能够匹配模式事件 *,使他能够在 Kibana 中创建可视化效果和这些指数的仪表板,您可以创建 events_admin 作用,并为新的 johndoe 用户分配角色。
curl -XPOST -u elastic 'localhost:9200/_xpack/security/role/events_admin' -d '{
"indices" : [
{
"names" : [ "events*" ],
"privileges" : [ "all" ]
},
{
"names" : [ ".kibana*" ],
"privileges" : [ "manage", "read", "index" ]
}
]
}'
curl -XPOST -u elastic 'localhost:9200/_xpack/security/user/johndoe' -d '{
"password" : "userpassword",
"full_name" : "John Doe",
"email" : "john.doe@anony.mous",
"roles" : [ "events_admin" ]
}'
"indices" : [
{
"names" : [ "events*" ],
"privileges" : [ "all" ]
},
{
"names" : [ ".kibana*" ],
"privileges" : [ "manage", "read", "index" ]
}
]
}'
curl -XPOST -u elastic 'localhost:9200/_xpack/security/user/johndoe' -d '{
"password" : "userpassword",
"full_name" : "John Doe",
"email" : "john.doe@anony.mous",
"roles" : [ "events_admin" ]
}'