gpt4 book ai didi

ssl - 使用 Swarm 部署的 Hyperledger Fabric 区 block 链网络上的证书问题

转载 作者:行者123 更新时间:2023-12-04 22:39:28 25 4
gpt4 key购买 nike

在使用 Hyperledger Fabric v1.4.4 在 Docker Swarm 上部署一个非常简单的区 block 链网络时,我遇到了这个特殊问题。它有 2 个组织(每个 2 个对等点)、5 个排序者(Raft 共识)、2 个 CA(每个组织一个)和 4 个 couchDB(每个对等点 1 个)。

当我尝试将对等方加入我刚刚创建的 channel 时,就会出现问题。终端上显示的消息:

Error: error getting endorser client for channel: endorser client failed to connect to peer0org1:7051: failed to create new connection: context deadline exceeded



当我浏览该对等方的日志时,我看到一条消息引起了我的注意:

createTransport -> DEBU 13c grpc: addrConn.createTransport failed to connect to {peer1car1:8051 0 }. Err :connection error: desc = "transport: authentication handshake failed: x509: certificate is valid for peer1.org1, peer1, not peer1org1". Reconnecting...



和一个实际的错误信息:

UTC [core.comm] ServerHandshake -> ERRO 1b9 TLS handshake failed with error remote error: tls: bad certificate server=PeerServer remoteaddress=10.0.2.7:50504



然后我开始查看 crypto-config.yaml 文件和用于部署我的堆栈的 docker-compose.yaml。在 crypto-config.yaml 文件中,我将 de Domain key 声明为“org1”,正如您在日志中看到的那样,证书对 pe​​er1org1 有效。但问题是,当我声明“peer0.org1”的服务名称时,我从 Swarm 收到一个错误,说它是一个无效的名称。

我知道我知道。日志中的消息是针对另一个对等方的,但是与我遇到的这个问题有关吗?关于如何解决它的任何想法?

关于另一个主题:我是容器或查询世界的新手,想知道您的意见。您会使用 Kubernetes 或 Swarm 在生产中部署 Hyperledger Fabric 区 block 链网络吗?

最佳答案

在您的 docker 网络中有效的服务名称(我假设它是 peer1org1 )需要作为主题备用名称 (SAN) 出现在 TLS 证书中。您可以在 crypto-config.yaml 中指定 SANS如下:

PeerOrgs:
- Name: org1
Domain: org1
EnableNodeOUs: true
Specs:
- Hostname: peer1
SANS:
- "peer1org1"
- Hostname: peer2
SANS:
- "peer2org1"

关于ssl - 使用 Swarm 部署的 Hyperledger Fabric 区 block 链网络上的证书问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61481973/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com