Hyperledger fabri c сплетни аутентифицируют хеш сертификата RemotePeer - PullRequest
2 голосов
/ 06 апреля 2020

Я новичок в Hyperledger Fabri c, у меня есть одна проблема с аутентификацией сплетни удаленного узла. Поскольку наш сервер находится во внутренней сети (не может получить доступ к inte rnet), нам нужно настроить nginx перед нашим одноранговым узлом, предположим, что один заказчик, 2 org, каждая организация имеет только один peer, peer0.org1 ( peer01), peer0.org2 (peer02), peer0.org1 является нашим внутренним одноранговым узлом, и он должен маршрутизировать по nginx, включая сплетни и включить mtls. если у нас есть закрытый ключ peer0.org2 и сертификат, он должен работать, как показано ниже:

peer01 nginx{

    ssl_certificate        peer02 server crt;
    ssl_certificate_key    peer02 server key;
    ssl_client_certificate peer01 client ca crt;


    location / {
        grpc_pass              to peer02

        grpc_ssl_certificate         peer01 client crt;
        grpc_ssl_certificate_key     peer01 client key;
        grpc_ssl_trusted_certificate  peer02 server ca.crt;

}

Но на самом деле у нас не может быть закрытого ключа peer0.org2, поэтому мы пытаемся использовать сертификат CA peer01. назначьте peer0.org2'cert и ключ, принадлежащий peer01, peer01-peer02.crt, peer01-peer02.key.

peer01 nginx{

    ssl_certificate        peer01-peer02 server crt;
    ssl_certificate_key    peer01-peer02 server key;
    ssl_client_certificate peer01 client ca crt;


    location / {
        grpc_pass              to peer02

        grpc_ssl_certificate         peer01 client crt;
        grpc_ssl_certificate_key     peer01 client key;
        grpc_ssl_trusted_certificate  peer02 server ca.crt;

}

Но в исходном коде сплетни fabri c мы обнаружили, что можем введите описание изображения здесь

, он проверит ха sh между удаленным сертификатом (я думаю, что он получен из канала) и откроет msg'cert, так что в конце концов произойдет ошибка и не будет работать.

Мое решение состоит в том, чтобы удалить эти проверочные коды и перестроить docker, но я не знаю, перестроить, какие docker образы могут работать, это fabri c -peer, некоторые парни могут сказать мне, что каждый docker в fabri c будет использовать какой пакет в исходном коде? или можете сказать мне более лучшее решение, чем изменить исходный код? Я должен сказать, что мы должны использовать TLS. многие спасибо.

1 Ответ

0 голосов
/ 08 апреля 2020

Да, это действительно причина, и что касается:

Мое решение состоит в том, чтобы удалить эти проверочные коды и перестроить docker, но я не знаю, перестроить, какие docker изображения может работать, это fabri c -peer, могут ли некоторые ребята сказать мне, что каждый docker в fabri c будет использовать какой пакет в исходном коде?

Вы можете удалить код и выполните make peer-docker и он создаст новый docker образ с обновленным кодом.

Что касается исправления этой «проблемы» в официальном Fabri c, вы можете взглянуть на FAB -8131 и повышайте осведомленность об этом, поскольку сообщество не оказывает поддержки для его реализации.

Еще одна вещь, которую вы можете рассмотреть, - это использовать не TLS-терминатор .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...