使用根和中间 CA 生成的证书启动对等方和排序方时出错
Error while starting peers and orderer with the certificates generated using Root and Intermediate CA
我正在尝试为我的网络设置实施根 CA 和中间 CA。我已经创建了根 CA 和中间 CA,并且已经注册并注册了组织的所有成员,即订购者、同行、管理员、用户。
一切正常,因为我已经看到了 CA 的日志并且它们工作正常但是当我尝试启动 docker 节点和排序者的容器时,他们没有起床,通过查看日志订购者和同行的我得到这些日志:
certificate has expired or is not yet valid yet.
任何人都可以帮我解决这个问题,因为我已经尝试了几次,但每次我都只收到这个错误。
这似乎更像是生成证书而不是过期的问题。所以它们要么还没有生成,要么放错地方了。
首先尝试完全重启docker。
然后,在密钥生成后添加一些缓冲时间。您可以在调用 cryptogen 和 configtxgen 之后但在实际 docker 容器启动之前添加 sleep 300
。
如果没有帮助,请尝试追踪证书的位置以及您尝试从哪里获取它们。
好的,我在这里找到了解决方案:
https://jira.hyperledger.org/browse/FABC-832
peer的起始有效期即Not Before比中间CA早5分钟左右。这是因为默认情况下,Fabric CA 将证书签名回溯 5 分钟。所以现在我在 fabric-ca-config.yaml 文件中将回溯日期设置为 1 秒:
signing:
default:
usage:
- digital signature
expiry: 8760h
backdate: 1s
profiles:
ca:
backdate: 1s
usage:
- cert sign
- crl sign
expiry: 43800h
caconstraint:
isca: true
maxpathlen: 0
tls:
backdate: 1s
usage:
- signing
- key encipherment
- server auth
- client auth
- key agreement
expiry: 8760h
我正在尝试为我的网络设置实施根 CA 和中间 CA。我已经创建了根 CA 和中间 CA,并且已经注册并注册了组织的所有成员,即订购者、同行、管理员、用户。
一切正常,因为我已经看到了 CA 的日志并且它们工作正常但是当我尝试启动 docker 节点和排序者的容器时,他们没有起床,通过查看日志订购者和同行的我得到这些日志:
certificate has expired or is not yet valid yet.
任何人都可以帮我解决这个问题,因为我已经尝试了几次,但每次我都只收到这个错误。
这似乎更像是生成证书而不是过期的问题。所以它们要么还没有生成,要么放错地方了。
首先尝试完全重启docker。
然后,在密钥生成后添加一些缓冲时间。您可以在调用 cryptogen 和 configtxgen 之后但在实际 docker 容器启动之前添加 sleep 300
。
如果没有帮助,请尝试追踪证书的位置以及您尝试从哪里获取它们。
好的,我在这里找到了解决方案:
https://jira.hyperledger.org/browse/FABC-832
peer的起始有效期即Not Before比中间CA早5分钟左右。这是因为默认情况下,Fabric CA 将证书签名回溯 5 分钟。所以现在我在 fabric-ca-config.yaml 文件中将回溯日期设置为 1 秒:
signing:
default:
usage:
- digital signature
expiry: 8760h
backdate: 1s
profiles:
ca:
backdate: 1s
usage:
- cert sign
- crl sign
expiry: 43800h
caconstraint:
isca: true
maxpathlen: 0
tls:
backdate: 1s
usage:
- signing
- key encipherment
- server auth
- client auth
- key agreement
expiry: 8760h