使用Neo4j的LetsEncrypt证书

如何使用由LetsEncrypt生成的证书文件与Neo4j实例一起使用? 由LetsEncrypt生成的文件是:

  • cert.pem
  • chain.pem
  • fullchain.pem
  • privkey.pem

我试过通过OpenSSL进行转换,目前还没有运气,使用从PEM到DER的转换。 Neo4j抱怨在开始时没有find证书。 问题是如何将LetsEncrypt证书转换成Neo4j可以使用的东西。

安装细节:

  • 证书放置在名为neo4j.{cert,key} ,权限为600 ,由neo4j:nogroup拥有的/var/lib/neo4j/certificates/ 。 所有这一切似乎都是根据文件 。
  • 在configuration中,我有这一行来指定证书path: dbms.directories.certificates=/var/lib/neo4j/certificates
  • 在configuration中,我也通过启用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上的让encryption证书:

  • 使用作为shell脚本方法实现的letsencrypt / acme客户端为我的域创build证书。
  • 生成三个文件运行脚本获取证书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. 

这应该为你运行。 希望这可以帮助!