我正在使用debian stretch(客户端和服务器端)。当我尝试使用命令行工具arangosh安全地连接到我的arangodb服务器时键入:
arangosh --server.endpoint ssl://192.168.2.11:8530
我收到错误:
无法连接到端点'http + ssl://192.168.2.11:8530',数据库:'_ system',用户名:'root'错误消息:'无法连接到'http + ssl://192.168.2.11:8530 ''SSL:在SSL_connect期间:0 - 成功''
我正在使用的自签名TLSv1.2证书似乎工作正常,因为通过Web界面连接到同一服务器确实可以正常工作。通过shell和Web界面的不安全(非TLS)连接也可以正常工作。一个简单的卷曲测试,如:
curl -v https://192.168.2.11:8530
返回,其中包括:
使用TLS1.2 / ECDHE_RSA_AES_256_GCM_SHA384进行SSL连接*服务器证书验证OK *服务器证书状态验证SKIPPED
我在/etc/ssl/certs
下安装了根CA证书(普通,没有连接私钥)任何想法?
同时ArangoDB提供了一个新的OpenSSL库,并将接受TLS 1.2。
我和created a new dummy ssl certificate一起-nodes
。
我把这两个文件都嵌入到这样一个文件中:
cat cert.pem key.pem > server.pem
我正在启动一个ArangoDB守护进程来使用这样的server.pem
:
arangod \
--http.trusted-origin http://was-erlauben-strunz.it \ # my fake ssl CA
--server.endpoint ssl://127.0.0.1:4529 \
--database.directory /tmp/dummydatabase \
--ssl.keyfile server.pem
并像这样对它进行一次arangosh:
arangosh --server.endpoint ssl://127.0.0.1:4529
它解决了。如果问题仍然存在,请创建一个github问题,并分享您创建ssl证书的方式。