You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker部署Elasticsearch与Kibana遇HTTPS通道HTTP流量警告求助

排查Docker部署Elasticsearch时"收到明文HTTP流量到HTTPS通道"的警告问题

问题背景

Docker部署Elasticsearch与Kibana服务启动后,Elasticsearch日志持续出现以下警告:

{"@timestamp":"2023-01-04T14:04:50.865Z", "log.level": "WARN", "message":"received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/172.29.0.2:9200, remoteAddress=/172.29.0.6:55870}", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[ad8fe576ac58][transport_worker][T#2]","log.logger":"org.elasticsearch.xpack.security.transport.netty4.SecurityNetty4HttpServerTransport","elasticsearch.cluster.uuid":"QDf3uC44Trqpc3FHqBuXtA","elasticsearch.node.id":"3NryPkn_R1q0n9vi7WozQw","elasticsearch.node.name":"ad8fe576ac58","elasticsearch.cluster.name":"docker-cluster"}

已尝试将所有HTTP配置替换为HTTPS,问题依旧;同一代码库在其他服务器可正常运行,配置来自Loggings仓库。

排查方向与解决步骤

1. 检查Elasticsearch的端口与协议绑定

  • 打开elasticsearch.yml,确认xpack.security.http.ssl.enabled设为true时,是否存在端口冲突:
    • 避免http.port和xpack.security.http.ssl.port同时绑定到9200端口,若启用HTTPS,建议关闭http.port配置,或为HTTP分配其他端口
    • 确保xpack.security.http.ssl.port明确指向HTTPS监听端口(比如9200)

2. 核对客户端的连接配置

  • 检查Kibana的kibana.yml,确认elasticsearch.hosts以https://开头,且端口与ES的HTTPS端口匹配
  • 排查容器网络内的其他服务(如日志采集器、监控工具),确认这些服务的ES连接地址已全部改为HTTPS,避免仍有明文请求发送到9200端口

3. 定位发起明文请求的来源

  • 警告中的远程地址为容器内网IP(如172.29.0.4),执行docker inspect <容器ID/名称>,匹配该IP对应的容器,确认是哪个服务在发起HTTP请求
  • 检查该服务的配置文件,修正ES连接协议为HTTPS

4. 验证SSL证书配置有效性

  • 确认elasticsearch.yml中xpack.security.http.ssl.certificate、xpack.security.http.ssl.key的路径在容器内正确,证书文件存在且权限正常
  • 检查证书是否与ES节点名称/IP匹配,避免因证书不匹配导致客户端降级为HTTP请求

5. 对比正常服务器的环境差异

  • 核对两台服务器的Docker、Docker Compose版本是否一致
  • 检查容器网络配置(如自定义网络模式、桥接规则)是否存在差异
  • 确认服务器防火墙、SELinux/AppArmor规则是否影响了端口的协议监听

内容的提问来源于stack exchange,提问作者IDev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 19:10:30