簡體   English   中英

ArangoDB與letsenrcypt證書一起使用

[英]ArangoDB working together with letsenrcypt certificates

是否有任何人使用letsencrypt證書運行arangoDB數據庫? 我只是無法找到這個運行。

ArangoDB運行在digitalOcean droplet上,我可以在本教程之后使用自簽名證書運行它。 所以arangoDB成功運行在端口:8530上

現在我的方法是用letsencrypt證書替換自簽名證書。

所以我在DigitalOcean中添加了一個子域到Droplet。 例如:db.example.com然后生成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:8530https://db.example.com:8530https://db.example.com:8530 Droplet的防火牆設置應該都可以,因為我之前可以使用自簽名的cetificate訪問此地址。

然后我嘗試修改/etc/arangodb3/arangod.conf的端點

endpoint = ssl://0.0.0.0:8530

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

並且

tcp://db.example.com:8530

它都沒有奏效。 有人在那里知道我做錯了什么嗎?

請在指定端點時使用要使用的接口的IP,例如endpoint = ssl://42.23.13.37:8530ip address應列出您的接口以及正在使用的地址)。 然后,它可以幫助使用fullchain.pem來創建server.prm( cat fullchain.pem privkey.pem > server.pem )。 確保arangodb用戶可以訪問和讀取生成的server.pem 如果服務器仍未正確啟動,請提供服務器的日志。 要訪問日志,請使用systemctl -fu arangodb3.service ,如果使用某個自定義位置進行日志記錄,請使用tail -f <logfile>跟蹤日志。

我剛剛測試了一個帶有letsencrypt證書的設置,它確保了所有上述要點后工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM