Используйте сертификаты LetsEncrypt с Neo4j


8

Как можно использовать файлы сертификатов, сгенерированные LetsEncrypt вместе с экземпляром Neo4j? Файлы, сгенерированные LetsEncrypt:

  • cert.pem
  • chain.pem
  • fullchain.pem
  • privkey.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=-}

По крайней мере, вы должны сообщить об ошибках, которые вы получаете ...
— gf_

Хорошая точка зрения. Сообщение об ошибке и пояснения теперь добавлены.
— Майкл Йохансен

Обратите внимание, что согласно документации, вам нужно конвертировать только ключ. Для сертификата просто используйте fullchain.pem
— Hardy Rust

Использование полной цепочки для сертификата сделало свое дело. Спасибо!
— Майкл Йохансен

Ответы:


10

Мне удалось использовать сертификат let encrypt на neo4j с помощью следующего процесса:

  • Использовал клиент letsencrypt / acme, реализованный как метод shell-script, для создания сертификата для моего домена.
  • Три файла генерируются с помощью скрипта для получения сертификата 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.

Это должно запустить его для вас. Надеюсь это поможет!

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.