将 LetsEncrypt 证书与 Neo4j 结合使用

将 LetsEncrypt 证书与 Neo4j 结合使用

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

  • 证书
  • 链式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=-}

答案1

我能够通过以下流程在 neo4j 上使用 lets 加密证书:

  • 使用作为 shell 脚本实现的 letsencrypt/acme 客户端为我的域名制作证书的方法。
  • 运行脚本获取证书会生成三个文件全链文件 证书 私钥
  • 将它们复制到 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.

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

相关内容