Ssl Logstash http输入插件加载加密私钥失败

Ssl Logstash http输入插件加载加密私钥失败,ssl,openssl,logstash,Ssl,Openssl,Logstash,我正在尝试为运行在Windows Server上的Logstash 7.10 Http输入插件设置SSL。 我能够使用openssl创建证书和私钥: openssl genrsa-out ca.key 2048 openssl-req-x509-new-nodes-key ca.key-sha256-out c:\ca.crt 然后我将私钥转换为PKCS8格式 openssl pkcs8-topk8-in-ca.key-out-ca-pkcs8.key Logstash可以运行,我可以点击htt

我正在尝试为运行在Windows Server上的Logstash 7.10 Http输入插件设置SSL。 我能够使用openssl创建证书和私钥:

openssl genrsa-out ca.key 2048

openssl-req-x509-new-nodes-key ca.key-sha256-out c:\ca.crt

然后我将私钥转换为PKCS8格式

openssl pkcs8-topk8-in-ca.key-out-ca-pkcs8.key

Logstash可以运行,我可以点击https端口

但是,私钥没有加密,因此我尝试使用密码短语对其进行加密。以下是我尝试过的几个例子:

openssl pkcs8-in ca.key-topk8-passout pass:somepassword-out ca-pkcs8-crypt.key

openssl pkcs8-in ca-pkcs8.key-topk8-passout pass:somepassword-out ca-pkcs8-crypt.key

但在初始化期间日志存储失败:

管道错误{:Pipeline_id=>“main”, :exception=>java.lang.IllegalArgumentException:文件不包含 有效私钥: C:\ELK\logstash-7.10.0\config\Certificates\ca-pkcs8-crypt.key

下面是我在settings.conf文件中的LogStash输入HTTP插件设置:

input {
  http { 
    port => 9601 # default: 8080
    ssl => true
    ssl_certificate => "C:\ELK\logstash-7.10.0\config\Certificates\ca.crt"
    ssl_key => "C:\ELK\logstash-7.10.0\config\Certificates\ca-pkcs8-crypt.key"
    ssl_key_passphrase => "somepassword"
  }
}
我们的IT政策不允许使用未加密的密钥文件,但我正在努力使加密的私钥正常工作。我使用的是openSSL 1.1.1,我在本地计算机上生成了证书和私钥,并将其传输到ELK服务器