Я пытался создать промежуточный CA для подключения к ROOT CA. В своем предыдущем вопросе я задавал вопрос, как подключиться. Я получил повтор по этой ссылке Hyperledger fabri c, столкнувшись с трудностями при настройке промежуточного CA . Здесь я пытаюсь спросить, когда я включаю TLS FABRIC_CA_SERVER_TLS_ENABLED=true
как для ROOT CA, так и для промежуточного CA. Мне нужно скопировать закрытый ключ ROOT CA, файл ca-cert.pem и tls-cert.pem в рабочий каталог промежуточного CA, и я сослался по этой ссылке Вопрос о стеке он работает.
Безопасно ли копировать закрытый ключ root ca в промежуточную папку CA?
Каждый раз, когда я запускаю промежуточный CA, используя конфигурацию ниже, я получаю сообщение об ошибке заявляя, что я не должен указывать имя cn, какое ica в моей конфигурации csr:cn: ica
?
Есть ли возможность создать промежуточный ЦС без копирования закрытого ключа ROOT CA с использованием TLS?
Intermidaite fabri c -ca-server-config
# Version of config file
version: 1.2.0
# Server's listening port (default: 7054)
port: 7054
# Enables debug logging (default: false)
debug: false
# Size limit of an acceptable CRL in bytes (default: 512000)
crlsizelimit: 512000
tls:
# Enable TLS (default: false)
enabled: true
# TLS for the server's listening port
certfile:
keyfile:
clientauth:
type: noclientcert
certfiles:
ca:
# Name of this CA
name: ica.org1.example.com
# Key file (is only used to import a private key into BCCSP)
keyfile:
# Certificate file (default: ca-cert.pem)
certfile:
# Chain file
chainfile:
crl:
expiry: 24h
registry:
# Maximum number of times a password/secret can be reused for enrollment
# (default: -1, which means there is no limit)
maxenrollments: -1
# Contains identity information which is used when LDAP is disabled
identities:
- name: icaadmin
pass: icaadminpw
type: client
affiliation: ""
attrs:
hf.Registrar.Roles: "peer,client,user"
hf.Registrar.DelegateRoles: "peer,client,user"
hf.Revoker: true
hf.IntermediateCA: true
hf.GenCRL: true
hf.Registrar.Attributes: "*"
hf.AffiliationMgr: true
db:
type: sqlite3
datasource: fabric-ca-server.db
tls:
enabled: false
certfiles:
client:
certfile:
keyfile:
ldap:
# Enables or disables the LDAP client (default: false)
# If this is set to true, the "registry" section is ignored.
enabled: false
# The URL of the LDAP server
url: ldap://<adminDN>:<adminPassword>@<host>:<port>/<base>
# TLS configuration for the client connection to the LDAP server
tls:
certfiles:
client:
certfile:
keyfile:
# Attribute related configuration for mapping from LDAP entries to Fabric CA attributes
attribute:
# 'names' is an array of strings containing the LDAP attribute names which are
# requested from the LDAP server for an LDAP identity's entry
names: ["uid", "member"]
converters:
- name:
value:
maps:
groups:
- name:
value:
affiliations:
org1:
- department1
- department2
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
csr:
cn: ica
names:
- C: US
ST: "North Carolina"
L: "Durham"
O: org1.example.com
OU:
hosts:
- localhost
ca:
expiry: 131400h
pathlength: 1
#############################################################################
# BCCSP (BlockChain Crypto Service Provider) section is used to select which
# crypto library implementation to use
#############################################################################
bccsp:
default: SW
sw:
hash: SHA2
security: 256
filekeystore:
# The directory used for the software file-based keystore
keystore: msp/keystore
cacount:
cafiles:
intermediate:
parentserver:
url: https://ica:icapw@localhost:7054
caname: ca.org1.example.com
enrollment:
hosts:
- localhost
profile: ca
label:
tls:
certfiles:
- /etc/hyperledger/fabric-ca-server/ca.org1.example.com-cert.pem
client:
certfile:
keyfile: