运维.ElasticSearch 一个异常received plaintext http traffic on an https

举报
jcLee95 发表于 2024/05/23 10:38:58 2024/05/23
【摘要】 默认情况下,Elasticsearch只能在本地主机上访问。文章主要讲述了在使用Elasticsearch时可能遇到的一个警告日志"received plaintext http traffic on an https channel"的处理方法。
运维.索引引擎ElasticSearch
一个小异常:received plaintext http traffic on an https channel

- 文章信息 -
Author: 李俊才 (jcLee95)
Visit me at CSDN: https://jclee95.blog.csdn.net
My WebSitehttp://thispage.tech/
Email: 291148484@163.com.
Shenzhen China
Address of this article:https://blog.csdn.net/qq_28550263/article/details/139140194
HuaWei:https://bbs.huaweicloud.com/blogs/427856

在这里插入图片描述



[2024-05-23T09:45:03,336][WARN ][o.e.h.n.Netty4HttpServerTransport] [DESKTOP-6GQSTBC] received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/[0:0:0:0:0:0:0:1]:9200, remoteAddress=/[0:0:0:0:0:0:0:1]:63881}
[2024-05-23T10:06:12,670][WARN ][o.e.h.n.Netty4HttpServerTransport] [DESKTOP-6GQSTBC] received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/[0:0:0:0:0:0:0:1]:9200, remoteAddress=/[0:0:0:0:0:0:0:1]:50163}

这两条日志的关键信息如下:

  1. 日志级别为WARN,表示有异常情况
  2. 日志来自o.e.h.n.Netty4HttpServerTransport,即ElasticsearchHTTP服务器组件
  3. 日志内容提示"received plaintext http traffic on an https channel",即在HTTPS通道上接收到了明文HTTP流量
  4. Elasticsearch的应对措施是"closing connection",即关闭了这个连接

所以可以判断,Elasticsearch服务器期望客户端使用HTTPS发送请求,但实际收到的是明文HTTP请求,因此拒绝了这些请求。

同时日志中也提到了请求的源地址和目标地址,这里都是[0:0:0:0:0:0:0:1],即IPv6环回地址,相当于IPv4127.0.0.1,表示请求来自本机。目标端口为9200,即Elasticsearch的默认端口。



使用HTTPS协议访问Elasticsearch而不是HTTP
例如你向创建一个名为test_index的索引,之前你PUT访问的是http://localhost:9200/test_index,现在将设你如将请求的URL改为https://localhost:9200/test_index,并确保Elasticsearch配置了正确的SSL证书。开发环境下可以直接请求。


默认只能用HTTPS。将Elasticsearch配置为允许HTTP明文通信。可以在elasticsearch.yml配置文件中添加以下内容来启用HTTP

http.port: 9200

找到该位置取消注释即可:
在这里插入图片描述


或者,如果你是在本地开发环境中使用Elasticsearch,也可以考虑禁用SSL以方便使用。这通常很没必要,就算你实在不想用HTTPS请求,你启动HTTP就可以了,而不是禁用SSL。可以在elasticsearch.yml中添加以下配置:

xpack.security.http.ssl:
  enabled: false
...
xpack.security.transport.ssl:
  enabled: false
...

这两种修改配置的方式,需要在修改后重启Elasticsearch服务。不过一帮这样配置只适合开发环境,生产环境中还是要启用SSL以保证安全。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。