#hyperledger-fabric #hyperledger #hyperledger-fabric-ca
#hyperledger-fabric #hyperledger #hyperledger-fabric-ca
Вопрос:
Мои заказчики и одноранговые узлы не могут обмениваться данными. Они выдают ошибку неправильного сертификата. Я не хочу терять какие-либо данные.
2020-12-18 12:47:46.820 UTC [core.comm] ServerHandshake -> ERRO 990 TLS handshake failed with error remote error: tls: bad certificate server=PeerServer remoteaddress=172.29.0.7:58636
Комментарии:
1. Вы используете консенсус Kafka или Raft?
2. Я использую Raft и hyperledger fabric версии 1.4
3. @GariSingh все мои узлы-заказчики выдают плохой сертификат, поэтому я думаю, что мне тоже нужно выполнить ротацию сертификатов для заказчиков? Я также опубликовал еще один отдельный вопрос о ротации сертификатов заказчиков.
4. Я также публикую, как обращаться с заказчиками ниже. Основной «трюк», облегчающий жизнь, заключается в использовании одного и того же закрытого ключа для каждого заказчика и простом обновлении общедоступного сертификата.
Ответ №1:
Для одноранговых узлов это очень просто:
- выдавать новые сертификаты TLS из того же центра сертификации, который выдал их текущие сертификаты
- замените существующие сертификаты (или обновите
core.yaml
, чтобы указать на новые сертификаты, если используете разные пути / имена файлов) - перезапустите одноранговые узлы
Для заказчиков, использующих Raft, это немного сложнее. Предполагая, что вы используете последнюю версию 1.4.x, заказчикам нужно использовать их существующие закрытые ключи для создания новых CSR, а затем попросить CA выдать новый общедоступный сертификат. Затем вы замените / обновите orderer.yaml
общедоступный сертификат и перезапустите заказчики по одному.
Комментарии:
1. Я пытался это сделать, но когда я перезапускаю средство заказа, оно никогда не достигает консенсуса.