Elasticsearch在控制台中显示https通道上接收到的纯文本http流量

ha5z0ras  于 2023-01-25  发布在  ElasticSearch
关注(0)|答案(5)|浏览(201)

我试图在我的Windows系统中设置elasticsearch,但当我试图运行它时,当我重定向到http://localhost:9200时,它会启动并显示下面的响应。

{
  "name" : "DESKTOP-L8UKCFI",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "z8IfZcFaQfSti3P4jhZxbg",
 "version" : {
   "number" : "8.1.0",
   "build_flavor" : "default",
   "build_type" : "zip",
   "build_hash" : "3700f7679f7d95e36da0b43762189bab189bc53a",
   "build_date" : "2022-03-03T14:20:00.690422633Z",
   "build_snapshot" : false,
   "lucene_version" : "9.0.0",
   "minimum_wire_compatibility_version" : "7.17.0",
   "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "You Know, for Search"
 }

但在控制台中显示的是这样的内容

[2022-03-16T11:26:12,307][WARN ][o.e.x.s.t.n.SecurityNetty4HttpServerTransport] [DESKTOP- 
L8UKCFI] 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]:5996}

[2022-03-16T11:31:56,806][WARN ] 
[o.e.x.s.t.n.SecurityNetty4HttpServerTransport] [DESKTOP-L8UKCFI] http 
client did not trust this server's certificate, closing connection 
Netty4HttpChannel{localAddress=/[0:0:0:0:0:0:0:1]:9200, 
remoteAddress=/[0:0:0:0:0:0:0:1]:6215}

ElasticSearch.yml

# ======================== Elasticsearch Configuration =========================
#
# NOTE: Elasticsearch comes with reasonable defaults for most settings.
#       Before you set out to tweak and tune the configuration, make sure you
#       understand what are you trying to accomplish and the consequences.
#
# The primary way of configuring a node is via this file. This template lists
# the most important settings you may want to configure for a production cluster.
#
# Please consult the documentation for further information on configuration options:
# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
#
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
#cluster.name: my-application
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
#
#node.name: node-1
#
# Add custom attributes to the node:
#
#node.attr.rack: r1
#
# ----------------------------------- Paths ------------------------------------
#
# Path to directory where to store the data (separate multiple locations by comma):
#
#path.data: /path/to/data
#
# Path to log files:
#
#path.logs: /path/to/logs
#
# ----------------------------------- Memory -----------------------------------
#
# Lock the memory on startup:
#
#bootstrap.memory_lock: true
#
# Make sure that the heap size is set to about half the memory available
# on the system and that the owner of the process is allowed to use this
# limit.
#
# Elasticsearch performs poorly when the system is swapping the memory.
#
# ---------------------------------- Network -----------------------------------
#
# By default Elasticsearch is only accessible on localhost. Set a different
# address here to expose this node on the network:
#
#network.host: 192.168.0.1
#
# By default Elasticsearch listens for HTTP traffic on the first free port it
# finds starting at 9200. Set a specific HTTP port here:
#
#http.port: 9200
#
# For more information, consult the network module documentation.
#
# --------------------------------- Discovery ----------------------------------
#
# Pass an initial list of hosts to perform discovery when this node is started:
# The default list of hosts is ["127.0.0.1", "[::1]"]
#
#discovery.seed_hosts: ["host1", "host2"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#
#cluster.initial_master_nodes: ["node-1", "node-2"]
#
# For more information, consult the discovery and cluster formation module documentation.
#
# ---------------------------------- Various -----------------------------------
#
# Allow wildcard deletion of indices:
#
#action.destructive_requires_name: false

#----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------
#
# The following settings, TLS certificates, and keys have been automatically      
# generated to configure Elasticsearch security features on 16-03-2022 06:55:18
#
# --------------------------------------------------------------------------------

# Enable security features
xpack.security.enabled: false

xpack.security.enrollment.enabled: false

# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
xpack.security.http.ssl:
  enabled: false
  keystore.path: certs/http.p12

# Enable encryption and mutual authentication between cluster nodes
xpack.security.transport.ssl:
  enabled: false
  verification_mode: certificate
  keystore.path: certs/transport.p12
  truststore.path: certs/transport.p12
# Create a new cluster with the current node only
# Additional nodes can still join the cluster later
cluster.initial_master_nodes: ["DESKTOP-L8UKCFI"]

# Allow HTTP API connections from localhost and local networks
# Connections are encrypted and require user authentication
http.host: [_local_, _site_]

# Allow other nodes to join the cluster from localhost and local networks
# Connections are encrypted and mutually authenticated
#transport.host: [_local_, _site_]

#----------------------- END SECURITY AUTO CONFIGURATION -------------------------

这是什么意思谁来告诉我。

rvpgvaaj

rvpgvaaj1#

从ES 8开始,SSL/TLS对于HTTP客户端默认为ON。
警告消息显示

http client did not trust this server's certificate

...这意味着你需要告诉你的浏览器信任服务器证书。它是默认的自签名,所以这可能是原因。
或者您可以简单地在elasticsearch.yml配置中禁用SSL,这也可以工作。

rkue9o1l

rkue9o1l2#

由于@瓦尔已经回答了上面的问题,只是张贴代码的新用户谁想要禁用SSL。

# --------------------------------------------------------------------------------

# Enable security features
xpack.security.enabled: false

xpack.security.enrollment.enabled: false

# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
xpack.security.http.ssl:
  enabled: false
  keystore.path: certs/http.p12

# Enable encryption and mutual authentication between cluster nodes
xpack.security.transport.ssl:
  enabled: false
  verification_mode: certificate
  keystore.path: certs/transport.p12
  truststore.path: certs/transport.p12
# Create a new cluster with the current node only
# Additional nodes can still join the cluster later
vnzz0bqm

vnzz0bqm3#

将以下内容添加到您的环境中:
- xpack.security.enabled=false
完整:

b-elastic:
    image: docker.elastic.co/elasticsearch/elasticsearch:8.4.0-arm64
    container_name: b-elastic
    environment:
      - discovery.type=single-node
      - ES_JAVA_OPTS=-Xms750m -Xmx750m
      - xpack.security.enabled=false
    volumes:
      - ./:/project
    ports:
      - 9200:9200
nwnhqdif

nwnhqdif4#

HTTP客户端不信任此服务器证书,正在关闭连接Netty 4 HttpChannel {本地地址=/[0:0:0:0:0:0:0:1]:9200,远程地址=/[0:0:0:0:0:0:0:1]:54479}
简单地说,这意味着您的浏览器是不信任的软件,所以使用https而不是http像https://localhost:9200/它会工作。我得到了这个解决方案从互联网上

hgtggwj0

hgtggwj05#

另一种方法是将elasticsearch运行为

./elasticsearch -E xpack.security.enabled=false

它基本上在禁用SSL的情况下运行它,允许您创建与它的HTTP连接。

相关问题