为 Hyperledger Fabric couchdb 启用 SSL

enabling SSL for Hyperledger Fabric couchdb

我想在启用 SSL 的情况下使用 couchDB(V.2.3.1),所以我将 [ssl] 部分添加到 /opt/couchdb/etc/local.d/docker.ini 文件中,如下所示:

[ssl]
port = 6984
enable = true
cert_file = /etc/hyperledger/fabric/tls/server.crt
key_file = /etc/hyperledger/fabric/tls/server.key
cacert_file = /etc/hyperledger/fabric/tls/ca.crt

[daemons]
httpsd = {couch_httpd, start_link, [https]}

[admins]
Admin = ...

[couchdb]
uuid = ...

但是我无法使用 https 访问 webUI!出现此错误:

This site can’t provide a secure connection
"IP" uses an unsupported protocol.
ERR_SSL_VERSION_OR_CIPHER_MISMATCH
Unsupported protocol
The client and server don't support a common SSL protocol version or cipher suite.

这是日志:

[error] 2020-05-17T06:52:18.046389Z nonode@nohost <0.19077.3> -------- SSL: hello: tls_handshake.erl:127:Fatal error: handshake failure - malformed_handshake_data

[error] 2020-05-17T06:52:18.046426Z nonode@nohost <0.18899.3> -------- application: mochiweb, "Accept failed error", "{error,{tls_alert,\"handshake failure\"}}"
[error] 2020-05-17T06:52:18.046508Z nonode@nohost <0.18899.3> -------- CRASH REPORT Process  (<0.18899.3>) with 0 neighbors exited with reason: {error,accept_failed} at mochiweb_acceptor:init/4(line:75) <= proc_lib:init_p_do_apply/3(line:247); initial_call: {mochiweb_acceptor,init,['Argument__1','Argument__2',...]}, ancestors: [https,couch_secondary_services,couch_sup,<0.202.0>], messages: [], links: [<0.253.0>], dictionary: [], trap_exit: false, status: running, heap_size: 1598, stack_size: 27, reductions: 954

有人可以帮我吗?

我找到了解决方案并写了一个 post 关于它:

https://medium.com/@pouyashojaei85/enabling-ssl-for-docker-couchdb-container-127388eca1a8