如何将 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.
这应该可以帮你运行。希望这对你有帮助!