在 Neo4j 中使用 LetsEncrypt 证书

Mic*_*sen 8 openssl ssl-certificate neo4j lets-encrypt

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

  • 证书文件
  • 链表
  • fullchain.pem
  • 私钥文件

到目前为止,我已经尝试通过 OpenSSL进行转换,但没有成功,使用从 PEM 到 DER 的转换。Neo4j 抱怨在启动时找不到证书。问题是如何将 LetsEncrypt 证书转换为 Neo4j 可以使用的东西。

设置细节:

  • 证书/var/lib/neo4j/certificates/以名称neo4j.{cert,key}、权限600、归neo4j:nogroup. 所有这些似乎都是根据文档
  • 在配置中,我用这一行来指定证书路径: 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=-}
Run Code Online (Sandbox Code Playgroud)

Ani*_*tra 10

通过使用以下过程,我能够在 neo4j 上使用 let encrypt 证书:

  • 使用作为 shell 脚本方法实现letencrypt/acme 客户端为我的域制作证书。
  • 运行脚本生成三个文件获取证书fullchain.pem cert.pem privkey.pem
  • 复制到neo4j的certificates目录下

    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.
Run Code Online (Sandbox Code Playgroud)

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