hyperledger-fabric - Hypereldger Fabric 管理员证书和 tls 证书已过期
问题描述
我注意到 HLf admincerts 和 tls 证书默认的有效期为 1 年。就我而言,它们已经过期,我的订购者和对等节点给了我一个错误的证书错误。有没有办法进行证书轮换?我不想丢失任何数据,因为网络处于生产环境中。我正在使用带有 raft 订购服务的 hyperledger fabric 1.4 版本。
解决方案
您可以通过在 fabric-ca-server 配置文件中更改其持续时间来更改 x509 证书的默认到期时间。你会在 CA 的 docker 容器中找到这个文件。
可以在此处找到对 fabric-ca-server 配置文件的参考。
在文件的签名部分将expiry
from的值更改为 xxxx。部分如下所示:8760h
signing
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 时间内过期,您可以执行重新注册操作。
推荐阅读
- python - 为什么这些优化看起来明显变慢了?
- javascript - JavaScript值中的小写和合并单词
- solr - solrj v4.3.1 使用空数组列表更新多值字段的 Solr 失败
- sony - 适用于 C# Windows 应用程序的索尼远程控制 API
- android - 无法读取原生 JSON 数据
- asp.net-mvc - MVC - 使用文本框获取日期
- ruby-on-rails - Rubymine 没有在第一个 Rails 测试中执行代码
- c# - JSON字典错误
- symfony - 动态参数取决于环境变量(Vhost)
- c# - 如何使用反射获取静态 void main() 的命名空间?