Elasticsearch开启认证|为ES设置账号密码|ES账号密码设置|ES单机开启认证|E ...

打印 上一主题 下一主题

主题 1787|帖子 1787|积分 5361

前言

ES安装完成并运行,默认环境下是允许任何用户访问的,如许并不安全,可以为ES开启认证,设置账号密码。
下面先容ES单节点开启认证以及ES集群开启认证的利用过程。
注意:Elasticsearch 8.11.4 不需要手动开启认证,安装时候会主动引导开启,下面先容的是 Elasticsearch 7.17.3版本开启认证


  • ES版本选择:在[ElasticSearch]分析京东商城商品搜刮实现|聚合|全文查找|搜刮引擎|ES Java High Level Rest Client|ES Java API Client这篇文章里举行了阐明,使用的7.17.3版本,不再赘述。
  • ES环境搭建参考:Elasticsearch环境搭建|ES单机|ES集群搭建
单节点模式开启认证

天生节点证书

进入ES目次(ES环境搭建时,指定了解压目次在es用户的home目次下)
  1. cd ~/elasticsearch-7.17.3/
复制代码
  

  • 天生一个新的本地证书颁发机构;(当前目次下天生了 elastic-stack-ca.p12 文件)
  • 天生X.509证书和密钥;(当前目次下天生了 elastic-certificates.p12 文件)
  • 移动到config目次下
  1. # 创建一个证书颁发机构
  2. bin/elasticsearch-certutil ca
  3. # 为节点生成证书和私钥
  4. bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
  5. # 移动到config目录下
  6. mv *.p12 config/
复制代码
  elasticsearch-certutil 命令阐明:
  1. bin/elasticsearch-certutil -h
  2. Simplifies certificate creation for use with the Elastic Stack
  3. Commands
  4. --------
  5. csr - generate certificate signing requests
  6. cert - generate X.509 certificates and keys
  7. ca - generate a new local certificate authority
  8. http - generate a new certificate (or certificate request) for the Elasticsearch HTTP interface
  9. Non-option arguments:
  10. command              
  11. Option             Description        
  12. ------             -----------        
  13. -E <KeyValuePair>  Configure a setting
  14. -h, --help         Show help         
  15. -s, --silent       Show minimal output
  16. -v, --verbose      Show verbose output
复制代码
修改ES配置文件

节点增长安全认证配置
  1. vim config/elasticsearch.yml
  2. xpack.security.enabled: true # 开启xpack认证机制
  3. xpack.security.transport.ssl.enabled: true
  4. xpack.security.transport.ssl.verification_mode: certificate
  5. xpack.security.transport.ssl.client_authentication: required
  6. xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
  7. xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
复制代码
  注意:配置xpack.security.enabled: true 以开启xpack认证机制
  为内置账号添加密码

   es开启认证后,启动es,请求es报错,没有认证,
  1. #使用Curl访问ES,返回401错误
  2. curl 'localhost:9200/_cat/nodes?pretty'
复制代码
这时候无需停掉es,设置好密码,就可以直接访问了(密码自己设置即可,为了方便这里全部设置成了123456)
  1. bin/elasticsearch-setup-passwords interactive
复制代码

此时可使用elastic用户访问
  1. curl -u elastic 'localhost:9200/_cat/nodes?v'
  2. curl -u elastic 'localhost:9200/_cat/nodes?pretty'
复制代码
  1. [es@polaris elasticsearch-7.17.3]$ curl -u elastic 'localhost:9200/_cat/nodes?pretty'
  2. Enter host password for user 'elastic':
  3. 192.168.43.7 59 70 17 0.96 0.73 0.33 cdfhilmrstw * polaris
  4. [es@polaris elasticsearch-7.17.3]$ curl -u elastic 'localhost:9200/_cat/nodes?v'
  5. Enter host password for user 'elastic':
  6. ip           heap.percent ram.percent cpu load_1m load_5m load_15m node.role   master name
  7. 192.168.43.7           60          70   0    0.32    0.58     0.31 cdfhilmrstw *      polaris
复制代码
  1. curl -u elastic 'localhost:9200?pretty'
复制代码
  1. [es@polaris elasticsearch-7.17.3]$ curl -u elastic 'localhost:9200?pretty'
  2. Enter host password for user 'elastic':{  "name" : "polaris",  "cluster_name" : "elasticsearch",  "cluster_uuid" : "tacYf_j9Sli4iMY7YOIcsg",  "version" : {    "number" : "7.17.3",    "build_flavor" : "default",    "build_type" : "tar",    "build_hash" : "5ad023604c8d7416c9eb6c0eadb62b14e766caff",    "build_date" : "2022-04-19T08:11:19.070913226Z",    "build_snapshot" : false,    "lucene_version" : "8.11.1",    "minimum_wire_compatibility_version" : "6.8.0",    "minimum_index_compatibility_version" : "6.0.0-beta1"  },  "tagline" : "You Know, for Search"}
复制代码
Kibana修改配置

  1. vim  ~/kibana-7.17.3-linux-x86_64/config/kibana.yml
  2. #add user and password
  3. elasticsearch.username: "kibana_system"
  4. elasticsearch.password: "123456"
复制代码
验证

kibana输入es用户名elastic和配置的密码123456登录

ES集群开启认证

在集群的一个节点上按照上面ES单节点模式开启认证,之后把证书文件拷贝到其他节点,并且修改ES配置
  1. # 192.168.43.69呆板 es-node-1cd ~/elasticsearch-7.17.3/
  2. config/[es@polaris config]$ ls | grep -E '*.p12'elastic-certificates.p12elastic-stack-ca.p12
复制代码
  1. # 拷贝到es-node-2,需要输入node2机器es用户的密码
  2. scp *.p12 es@192.168.43.133:/home/es/elasticsearch-7.17.3/config
  3. # 拷贝到es-node-3,需要输入node3机器es用户的密码
  4. scp *.p12 es@192.168.43.225:/home/es/elasticsearch-7.17.3/config
复制代码
修改配置、设置密码的过程参考上面的利用,不赘述。
同样按照之前利用Kibana配置中添加用户名密码即可。
验证




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

罪恶克星

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表