2016-04-22 27 views
2

我們正試圖在本地機器上設置屏蔽SSL。Kibana未連接彈性搜索屏蔽SSL

Elasticsearch version : 2.2.1 
Kibana version : 4.4.1 
Shield version : Latest version 

我們生成的自簽署CRT,鑰匙,筆式文件,如下:

openssl req -out CSR.csr -new -newkey rsa:2048 -nodes -keyout privateKey.key 
openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout privateKey.key -out certificate.crt 
openssl req -out CSR.csr -key privateKey.key -new 
openssl x509 -x509toreq -in certificate.crt -out CSR.csr -signkey privateKey.key 
openssl x509 -in certificate.crt -out certificate.pem 
keytool -importcert -keystore node01.jks -file certificate.pem -alias my_ca 
keytool -certreq -alias node01 -keystore node01.jks -file CSR.csr -keyalg rsa -ext san=dns:XXX.com,ip:XXXX.xxxx.xxx 
keytool -importcert -keystore node01.jks -file Certificate-signed.crt -alias node01 
openssl x509 -in Certificate-signed.crt -out node01-signed-noheaders.crt 

,並在防護結構增加。

盾配置:

shield.http.ssl: true 
shield.transport.ssl: true 
shield.ssl.keystore.key_password: XXXXX 
shield.ssl.keystore.password: XXXX 
shield.ssl.keystore.path: /es/config/shield/node01.jks 
network.host: XX.XX.XX.XX 

Kibana配置:

elasticsearch.url: "https://XXXXX:9200" 
elasticsearch.username: "username" 
elasticsearch.password: "password" 
elasticsearch.ssl.cert: /XXX/XXX/XXX/elasticsearchtls.crt 
elasticsearch.ssl.key: /XXX/XXX/XXX/elasticsearchtls.key 
elasticsearch.ssl.ca: /XXX/XXX/XXX/elasticsearch.pem 
elasticsearch.ssl.verify: true 

所以運行顯示在elasticsearch日誌下面的錯誤kibana時:

log [12:24:25.512] [error][elasticsearch] Request error, retrying -- self signed certificate 
log [12:24:25.622] [warning][elasticsearch] Unable to revive connection: https://XXXX:9200/ 
log [12:24:25.624] [warning][elasticsearch] No living connections 
log [12:24:25.627] [error][status][plugin:elasticsearch] Status changed from yellow to red - Unable to connect to Elasticsearch at https://XXXXXX:9200. 

後,當我改變Kibana工作正常,但在elas中顯示一些錯誤ticsearch日誌:

​​

在彈性客戶端也出現同樣的問題。當我們使用rejectUnauthorized:true時,客戶端不連接到elasticsearch。

我的問題是:

  • 是自簽名證書在Elasticsearch,Kibana工作或沒有?
  • 我們是否必須購買商業CA證書?
  • 我們錯過了什麼?

回答

1

您在生成和導入密鑰時使用了不必要的步驟。此外,您生成的證書未由CA簽名,因此永遠不會被信任

除非您有大型部署,否則我只使用自簽名證書,而不是由自簽名CA簽署的證書。

1)生成與擴展SAN一個自署名證書作爲此處指示How can I generate a self-signed certificate with SubjectAltName using OpenSSL?

2)合併在一個PKCS12容器中的密鑰和證書,並將其導入到一個Java密鑰按此處的說明importing an existing x509 certificate and private key in Java keystore to use in ssl