Ssl-Certificate

將 LetsEncrypt 證書與 Neo4j 一起使用

  • September 17, 2018

如何將 LetsEncrypt 生成的證書文件與 Neo4j 實例一起使用?LetsEncrypt 生成的文件有:

  • 證書.pem
  • 鏈.pem
  • 全鏈.pem
  • 私鑰文件

到目前為止,我已經嘗試通過 OpenSSL 進行轉換,但沒有成功,使用從 PEM 到 DER 的轉換。Neo4j 抱怨啟動時找不到證書。問題是如何將 LetsEncrypt 證書轉換為 Neo4j 可以使用的東西。

設置細節:

  • 證書/var/lib/neo4j/certificates/與名稱neo4j.{cert,key}、權限600、歸neo4j:nogroup. 所有這些似乎都是根據docs
  • 在配置中,我有這一行來指定證書路徑:dbms.directories.certificates=/var/lib/neo4j/certificates
  • 在配置中,我還啟用了通過 HTTPS 進行的遠端訪問:dbms.connector.https.address=0.0.0.0:7473

重新啟動 Neo4j 時,我收到以下錯誤消息:

WARN  Illegal character 0x16 in state=START for buffer HeapByteBuffer@5a260174[p=1,l=193,c=8192,r=192]={\x16<<< SEVERAL_LINES_OF_HEX_JIBBERISH_HERE }
WARN  badMessage: 400 Illegal character 0x16 for HttpChannelOverHttp@5d682358{r=0,c=false,a=IDLE,uri=-}

通過使用以下過程,我能夠在 neo4j 上使用 let encrypt 證書:

  • 使用作為 shell 腳本方法實現的letsencrypt/acme 客戶端為我的域製作證書。
  • 執行腳本生成三個文件以獲取證書fullchain.pem cert.pem privkey.pem
  • 將它們複製到 neo4j 的證書目錄

mv /path_to_lets_encrypt_certs_dir/fullchain.pem /var/lib/neo4j/certificates/neo4j.cert

mv /path_to_lets_encrypt_certs_dir/privkey.pem /var/lib/neo4j/certificates/neo4j.key

  • 重啟neo4j
anirudh@prok:~# /var/lib/neo4j/bin/neo4j restart
Stopping Neo4j.. stopped
Starting Neo4j.
WARNING: Max 1024 open files allowed, minimum of 40000 recommended.  See the Neo4j manual.
Started neo4j (pid 17608). By default, it is available at  https://your-domain:7473/
There may be a short delay until the server is ready.
See /var/lib/neo4j/logs/neo4j.log for current status.

這應該為您執行它。希望這可以幫助!

引用自:https://serverfault.com/questions/809413