Ssl-Certificate
將 LetsEncrypt 證書與 Neo4j 一起使用
如何將 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.
這應該為您執行它。希望這可以幫助!