不能使用 ElasticSearch IP 地址作为节点 URI(不信任服务器证书)

问题描述 投票:0回答:0

这是我在这里的第一篇文章,所以请多多包涵!

当前设置:
-Elasticsearch 和 Kibana 托管在带有 docker 的 ubuntu 服务器上(因此,对于 Elasticsearch,Elastic API URI 类似于 xxx.xxx.xxx.xxx:9200,对于 Kibana,类似于 xxx:xxx:xxx:xxx:5601)
-C# 应用程序在我的机器上本地运行

我一生都在尝试使用 Serilog 和 Serilog.Sinks.Elasticsearch 通过我的 C# 应用程序连接到 Elastic 的 API。只有当我使用 ngrok 创建到 Elasticsearch 的代理隧道时,我才会成功。使用代理隧道(例如 https://aabbccddee11.ngrok.io)我可以毫无问题地登录到 Elasticsearch。

如果我使用 xxx.xxx.xxx.xxx:9200 URI,容器会记录以下内容:

http 客户端不信任此服务器的证书,关闭连接 Netty4HttpChannel

证书:

https://ibb.co/LYvzg8p

这是我当前在 appsettings.json (ngrok) 中的配置:

"Serilog": {    
    "Using": [ "Serilog.Sinks.Elasticsearch" ],    
    "MinimumLevel": "Information",    
    "WriteTo": [       
        {
            "Name": "Elasticsearch",          
            "Args": {             
                     "nodeUris": "https://aabbccddee11.ngrok.io",
                     "connectionGlobalHeaders": "Authorization=Basic xxx",      
                     "indexFormat": "someindex-{0:MM.yyyy}",
                     "autoRegisterTemplate": true,             
                     "autoRegisterTemplateVersion": "ESv7",             
                     "typeName": ""
              }       
        }
    ] 
}     

我知道很多人都遇到过上述错误,我在网上看了很多论坛,但我还没有找到解决问题的最终方法。

非常感谢您的帮助。

我尝试在服务器的 uri 上使用 https 添加,但没有成功。

c# docker elasticsearch logging serilog
© www.soinside.com 2019 - 2024. All rights reserved.