ArangoDB работает вместе с сертификатами letsenrcypt - PullRequest
0 голосов
/ 24 октября 2018

Есть ли кто-нибудь, кто получил работающую базу данных arangoDB, работающую с сертификатом letsencrypt?Я просто не могу понять, что это за запуск.

ArangoDB работает на дроплете digitalOcean, и я мог бы запустить его вместе с самозаверяющим сертификатом, следуя этому учебнику .Итак, arangoDB успешно работает на порте: 8530

Теперь мой подход заключался в замене самозаверяющего сертификата сертификатом letsencrypt.

Поэтому я добавил субдомен в DigitalOcean к капле.Например: db.example.com a затем сгенерировал cert-файлы:

sudo -H ./letsencrypt-auto certonly --standalone -d db.example.com

В итоге вы получите 4 файла: cert.pem chain.pem fullchain.pem privkey.pem

Как я понял, это следующие файлы:

Private Key --------> privkey.pem
Public Key ---------> cert.pem
Certificate Chain --> chain.pem

Как описано в упомянутом учебнике, вам нужен сертификат и ключ в одном файле.Поэтому я сделал

cat chain.pem privkey.pem | sudo tee server.pem

, чтобы получить файл, содержащий сертификат и закрытый ключ.

Затем я изменил файл /etc/arangodb3/arangod.conf, чтобы сообщить arango, где находитсяКлючевым файлом является и изменен раздел ssl:

[ssl]
keyfile = /etc/letsencrypt/live/db.example.com/server.pem

Но после перезапуска arango сервер недоступен.При попытке подключить браузер к: https://db.example.com:8530.Все настройки брандмауэра для капли должны быть в порядке, потому что я мог получить доступ к этому адресу с помощью самоподписанного сертификата раньше.

Затем я попытался изменить конечную точку в /etc/arangodb3/arangod.conf с

endpoint = ssl://0.0.0.0:8530

до

endpoint = ssl://db.example.com:8530

, а также

tcp://db.example.com:8530

Ничего из этого не работало.У кого-нибудь есть идеи, что я делаю неправильно?

1 Ответ

0 голосов
/ 24 октября 2018

Пожалуйста, используйте ip интерфейса, который вы хотите использовать при указании конечной точки, например, endpoint = ssl://42.23.13.37:8530 (ip address должен перечислить ваши интерфейсы вместе с используемыми адресами).Тогда это может помочь использовать fullchain.pem для создания server.prm (cat fullchain.pem privkey.pem > server.pem).Убедитесь, что полученный server.pem доступен и доступен для чтения пользователю arangodb.Если сервер по-прежнему не запускается правильно, укажите журналы сервера.Чтобы получить доступ к журналам, используйте systemctl -fu arangodb3.service или следите за журналами с помощью tail -f <logfile>, если вы используете какое-то пользовательское местоположение для ведения журнала.

Я только что протестировал установку с сертификатами letsencrypt, и она работала после проверки всех вышеперечисленных пунктов.

...