极限网关无缝集成ldap,哇哈哈
yangmf2040 发表了文章 • 0 个评论 • 1666 次浏览 • 2022-05-12 20:50
本文目的为例验证极限网关和ldap之间的集成功能:
- 直接访问网关,走ldap验证
- kibana连接网关,走ldap验证
最近公司对Elasticsearch集群安全抓的紧了,免费的用户名密码固然是好,但还是免不了得给不同的部门、应用创建账户,不想搞。直接LDAP不完了吗?领导说“官方ldap要买license 这么些节点得50w左右。” 我擦,难道没有别的方案了吗?一圈打听下来,还真有。
实验步骤:
- 既然是验证ldap,肯定要先准备个ldap
访问 https://github.com/glauth/glauth,下载对应的软件:https://github.com/glauth/glauth/releases
下载ldap的配置文件:https://github.com/glauth/glau ... e.cfg
运行ldap:./glauth64 -c sample-simple.cfg
手工验证下ldap是否正常:
ldapsearch -LLL -H ldap://localhost:3893 -D cn=serviceuser,ou=svcaccts,dc=glauth,dc=com -w mysecret -x -bdc=glauth,dc=com cn=hackers
能正常返回hackers的信息,则ldap运行正常:
- 配置极限网关
下载极限网关:http://release.infinilabs.com/gateway/snapshot/
本次测试下载的最新版本:gateway-1.6.0_SNAPSHOT-643
下载完后,去sample里找下ldap的配置。
修改成自己的环境:
```
修改 set_basic_auth
flow:- name: hello_world
filter: - ldap_auth:
host: "localhost"
port: 3893
bind_dn: "cn=serviceuser,ou=svcaccts,dc=glauth,dc=com"
bind_password: "mysecret"
base_dn: "dc=glauth,dc=com"
user_filter: "(cn=%s)"
group_attribute: "ou"
bypass_api_key: true - set_basic_auth:
username: elastic
password: password
修改elasticsearch资源
elasticsearch: - name: 717
enabled: true
endpoints: - http://192.168.56.3:7171
basic_auth:
username: elastic
password: password - name: logging
enabled: false
endpoints: - http://192.168.3.188:9206
basic_auth:
username: elastic
password: Bp2HyArQDd+5PdgEJ4QH
pipeline:
pipelines for logging
- name: consume-request_logging_index-to-backup
auto_start: true
keep_running: true
processor:
- json_indexing:
index_name: "test-gateway_requests"
elasticsearch: "logging"
input_queue: "request_logging"
```
启动网关:./gateway-linux-amd64 -config sample-configs/elasticsearch-with-ldap.yml
- name: hello_world
- 测试ldap是否正常
- 直接访问网关,使用ldap中的用户
curl localhost:8000 -u hackers:dogood
正常返回es的信息
搜索下
- kibana连接网关,输入ldap用户名和密码后登录到Elastic
<br /> kibana 配置网关的地址和ldap中的用户<br /> elasticsearch.hosts: ["<a href="http://127.0.0.1:8000"" rel="nofollow" target="_blank">http://127.0.0.1:8000"</a>]<br /> elasticsearch.username: "hackers"<br /> elasticsearch.password: "dogood"<br />
启动kibana后,用ladap用户登录
或
逻辑:ldap验证通过后,使用 set_basic_auth 中设置的用户名和密码登录到Elasticsearch
至此,本次测试就结束了,ldap功能集成功能正常。而且本方案对Elasticsearch集群无侵入,部署简单。顺手翻了下网站,其实网关还有很多其他高大上的功能:跨站数据查询,高可用,在线查询修改等。阔以,一举多得。
期待后续为各个ldap用户增加到Elastic用户的映射就更加完美了。
目前准备预发环境搞起来。发文冒个泡,希望有在使用的小伙伴一起多交流。
- 既然是验证ldap,肯定要先准备个ldap
多大集群规模需要增加Coordinating节点
liujiacheng 回复了问题 • 2 人关注 • 1 个回复 • 968 次浏览 • 2022-05-09 22:22
build_snapshot代表什么意思???
locatelli 回复了问题 • 2 人关注 • 1 个回复 • 2058 次浏览 • 2022-05-09 10:30
query_string词距问题
bao 回复了问题 • 4 人关注 • 3 个回复 • 1567 次浏览 • 2022-05-16 17:26
Elasticsearch 分片分配失败
Charele 回复了问题 • 2 人关注 • 1 个回复 • 2209 次浏览 • 2022-05-07 20:11
官方为什么又重新推出了一个Java API Client?
Charele 回复了问题 • 2 人关注 • 1 个回复 • 1050 次浏览 • 2022-05-07 16:04
关于快照(恢复)的一个问题
Ombres 回复了问题 • 2 人关注 • 1 个回复 • 881 次浏览 • 2022-05-06 17:03
Enterprise:使用 Elastic Stack 8.2 中的 Elasticsearch API 来定位 App Search 中的文档
liuxg 发表了文章 • 0 个评论 • 1070 次浏览 • 2022-05-06 08:48
Elasticsearch 技术短视频分享持续更新中.......
laoyang360 发表了文章 • 0 个评论 • 1194 次浏览 • 2022-05-06 07:14