首页 > 解决方案 > Hypereldger Fabric 管理员证书和 tls 证书已过期

问题描述

我注意到 HLf admincerts 和 tls 证书默认的有效期为 1 年。就我而言,它们已经过期,我的订购者和对等节点给了我一个错误的证书错误。有没有办法进行证书轮换?我不想丢失任何数据,因为网络处于生产环境中。我正在使用带有 raft 订购服务的 hyperledger fabric 1.4 版本。

标签: hyperledger-fabrichyperledgerhyperledger-chaincodehyperledger-fabric-ca

解决方案


您可以通过在 fabric-ca-server 配置文件中更改其持续时间来更改 x509 证书的默认到期时间。你会在 CA 的 docker 容器中找到这个文件。

可以在此处找到对 fabric-ca-server 配置文件的参考。

在文件的签名部分将expiryfrom的值更改为 xxxx。部分如下所示:8760hsigning

signing:
    default:
      usage:
        - digital signature
      expiry: 8760h
    profiles:
      ca:
         usage:
           - cert sign
           - crl sign
         expiry: 43800h
         caconstraint:
           isca: true
           maxpathlen: 0
      tls:
         usage:
            - signing
            - key encipherment
            - server auth
            - client auth
            - key agreement
         expiry: 8760h

更改 的值后expiry,您必须重新启动 CA 容器才能使更改生效。

重新启动容器后,重新注册您的管理员以创建具有更新的到期持续时间的新 x509 证书。您可以从此处阅读有关重新注册身份的信息。

如果您希望将来避免任何用户出现此类情况,您可以在进行事务之前重新注册它。如果证书已经过期或将在接下来的 x 时间内过期,您可以执行重新注册操作。


推荐阅读