Сбой квитирования TLS с ошибкой удаленной ошибки: tls: сбой сервера сертификатов = Заказчик - PullRequest
1 голос
/ 23 апреля 2019

Я пытаюсь настроить матрицу hyperledger на виртуальной машине вручную.Я сгенерировал все артефакты и настроил orderer.yaml и core.yaml.У меня работает заказчик по порту 127.0.0.1:7050.Когда я пытаюсь создать канал с помощью команды peer cli channel create, на одноранговом терминале появляется сообщение context deadline exceeded.

./bin/peer channel create -o 127.0.0.1:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls --cafile /home/fabric-release/mynetwork/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem

Ошибка: не удалось создать клиента доставки: клиенту orderer не удалосьподключиться к 127.0.0.1:7050: не удалось создать новое подключение: превышен крайний срок контекста

На терминале заказчика появляется следующая ошибка:

2019-04-23 09: 22: 03.707 EDT [core.comm] ServerHandshake -> ERRO 01b Сбой квитирования TLS с ошибкой удаленной ошибки: tls: неверный сервер сертификатов = Удаленный адрес заказчика = 127.0.0.1: 38618

2019-04-2309: 22: 04.699 EDT [core.comm] ServerHandshake -> ERRO 01c TLS-квитирование не выполнено с ошибкой удаленной ошибки: tls: неверный сервер сертификатов = Удаленный адрес заказчика = 127.0.0.1: 38620

2019-04-23 09: 22: 06.187 EDT [core.comm] ServerHandshake -> ERRO 01d TLS-квитирование не удалось из-за ошибки удаленной ошибки: tls: неверный сервер сертификатов = Удаленный адрес заказчика = 127.0.0.1: 38622

Я прошелКонфигураНесколько раз я не уверен, что что-то упустил.Следующее мое orderer.yaml

General:
  LedgerType: file
  ListenAddress: 127.0.0.1
  ListenPort: 7050

  TLS:
    Enabled: true
    PrivateKey: /home/fabric-release/mynetwork/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key
    Certificate: /home/fabric-release/mynetwork/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt
    RootCAs:
      - /home/fabric-release/mynetwork/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt
    ClientAuthRequired: true

  Keepalive:
    ServerMinInterval: 60s
    ServerInterval: 7200s
    ServerTimeout: 20s

  GenesisMethod: file

  GenesisProfile: OneOrgOrdererGenesis

  GenesisFile: channel-artifacts/genesis.block

  LocalMSPDIR: /home/fabric-release/mynetwork/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp

  LocalMSPID: OrdererMSP

  Authentication:
    TimeWindow: 15m

FileLedger:
  Location: /var/hyperledger/production/orderer
  Prefix: hyperledger-fabric-ordererledger

1 Ответ

1 голос
/ 23 апреля 2019

Проблема заключается в том, что сертификат сервера TLS, используемый заказчиком, не имеет SAN, совпадающей с "127.0.0.1". Вы можете добавить «localhost» и / или «127.0.0.1» к своим сертификатам TLS, используя пользовательский crypto-config.yaml при создании артефактов с помощью cryptogen:

# ---------------------------------------------------------------------------
# "OrdererOrgs" - Definition of organizations managing orderer nodes
# ---------------------------------------------------------------------------
OrdererOrgs:
  # ---------------------------------------------------------------------------
  # Orderer
  # ---------------------------------------------------------------------------
  - Name: Orderer
    Domain: example.com
    EnableNodeOUs: false

    # ---------------------------------------------------------------------------
    # "Specs" - See PeerOrgs below for complete description
    # ---------------------------------------------------------------------------
    Specs:
      - Hostname: orderer
        SANS:
          - "localhost"
          - "127.0.0.1"

# ---------------------------------------------------------------------------
# "PeerOrgs" - Definition of organizations managing peer nodes
# ---------------------------------------------------------------------------
PeerOrgs:
  # ---------------------------------------------------------------------------
  # Org1
  # ---------------------------------------------------------------------------
  - Name: org1
    Domain: org1.example.com
    EnableNodeOUs: true
    Template:
      Count: 2
      SANS:
         - "localhost"
         - "127.0.0.1"
    Users:
      Count: 1

  - Name: org2
    Domain: org2.example.com
    EnableNodeOUs: false
    Template:
      Count: 2
      SANS:
         - "localhost"
         - "127.0.0.1"
    Users:
      Count: 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...