Hyperledger结构:TLS握手失败,并显示错误远程错误:tls:错误的证书服务器=订购者remoteaddress

时间:2020-01-21 14:05:58

标签: hyperledger-fabric hyperledger

这似乎是HLF频道创建命令中的常见问题

这是我创建频道的命令

peer channel create -o orderer1.workspace:7050 -c base-main-channel -f ./config/channel.tx --tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/base.order/orderers/orderer1.base.order/msp/tlscacerts/tlsca.base.order-cert.pem

我从订单节点收到的错误是

ERRO 02d TLS handshake failed with error remote error: tls: bad certificate server=Orderer remoteaddress=172.23.0.7:36982

我已经尝试过此问题TLS handshake failed with error remote error: tls: bad certificate server=Orderer

的解决方案

但这对我不起作用

我使用的是raft而不是kafka的订购服务

这是我的木筏配置

Raft:
        <<: *ChannelDefaults
        Capabilities:
            <<: *ChannelCapabilities
        Orderer:
            <<: *OrdererDefaults
            OrdererType: etcdraft
            EtcdRaft:
                Consenters:
                - Host: orderer.base
                  Port: 7050
                  ClientTLSCert: crypto-config/ordererOrganizations/base.order/orderers/orderer1.base.order/tls/server.crt
                  ServerTLSCert: crypto-config/ordererOrganizations/base.order/orderers/orderer1.base.order/tls/server.crt
            Addresses:
                - orderer.base:7050

2 个答案:

答案 0 :(得分:0)

您在peer channel create命令中为-cafile 使用了不正确的文件夹路径。

代替

--cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/base.order/orderers/orderer1.base.order/msp/tlscacerts/tlsca.base.order-cert.pem

使用

--cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/base.order/tlsca/tlsca.base.order-cert.pem

答案 1 :(得分:0)

另一种解决方案是删除容器的卷

docker volume rm $(docker volume ls)

并重启网络