Neo4jでLetsEncrypt証明書を使用する


8

LetsEncryptによって生成された証明書ファイルをNeo4jインスタンスと一緒に使用するにはどうすればよいですか?LetsEncryptによって生成されるファイルは次のとおりです。

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

PEMからDERへの変換を使用して、今までのところ運が悪いOpenSSL経由の変換を試みました。Neo4jは、起動時に証明書が見つからないことについて不満を述べています。問題は、LetsEncrypt証明書をNeo4jが使用できるものに変換する方法です。

セットアップの詳細:

  • 証明書は、が所有する/var/lib/neo4j/certificates/名前neo4j.{cert,key}、権限とともに配置さ600neo4j: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=-}

少なくとも、発生しているエラーを提供する必要があります...
gf_

いい視点ね。エラーメッセージと説明が追加されました。
Michael Johansen

ドキュメントによると、キーのみを変換する必要があることに注意してください。証明書には、fullchain.pemを使用してください
Hardy Rust

証明書にフルチェーンを使用するとうまくいきました。ありがとう!
Michael Johansen

回答:


10

次のプロセスを使用して、neo4jで証明書を暗号化するletを使用することができました。

  • シェルスクリプトメソッドとして実装されたletsencrypt / acmeクライアントを使用して、ドメインの証明書を作成しました。
  • 3つのファイルが証明書を取得するためのスクリプトを実行して生成された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.

これで実行されます。お役に立てれば!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.