1.hyperleger fabric ca server 설정 파일 분석
2.hyperleger fabric ca server 구축
fabric ca server 구축 시 필요한 설정 파일이 존재합니다. 아래 링크 클릭 시 자세한 설정을 확인할 수 있습니다.
fabric ca server 설정 파일이 적용에는 2가지 방법이 있습니다.
fabric-ca-server -port 7054 start
ex) export 설정파일명_설정이름 = 설정값;
FABRIC_CA_SERVER_PORT = 7054
본 실습에서 fabric ca server 구축시 사용하는 설정은 아래와 같습니다.
farbic ca server 사용 포트
port: 7054
farbic ca server 에서 발급받은 인증서 관련 설정
signing: default: usage: - digital signature expiry: 8760h # 발급받는 인증서 유효기간 설정 8760h 값은 약 1년을 의미 profiles: ca: usage: - cert sign - crl sign expiry: 43800h caconstraint: isca: true # ca server 인증서 발급 여부 maxpathlen: 0 tls: usage: - signing - key encipherment - server auth - client auth - key agreement expiry: 8760h # 발급받는 인증서(TLS) 유효기간 설정 8760h 값은 약 1년을 의미
farbic ca server csr(인증서 발급을 위한 설정) 관련 설정
signing: csr: cn: <<<COMMONNAME>>> # common name 설정 보통 ca server 도메인으로 설정 keyrequest: # key 알고리즘 설정 algo: ecdsa size: 256 names: - C: US # country (지역 명) ST: "North Carolina" # state (시/도 명) L: # locality (구/군 명) O: Hyperledger # organization (기관/회사 명) OU: Fabric # organization unit (부서 명) hosts: - <<<MYHOST>>> - localhost ca: expiry: 131400h # root ca 인증서 유효기간 설정 131400h 값은 약 15년을 의미 pathlength: <<<PATHLENGTH>>>
현재는 아래 구성도에서 VM1(org apeer) 부분 먼저 구축 진행합니다.
fabric ca server 를 docker 컨테이너로 구축하기 위해서 docker-compose-ca.yaml 파일을 작성합니다.
fabric ca server 는 orderer, apeer 총 두개를 구축합니다.
infra, compose-files 폴더 생성
mkdir -p /home/fabric/infra/compose-files
docker-compose-ca.yaml 파일 작성
sudo vi /home/fabric/infra/compose-files/docker-compose-ca.yaml
version: '2.1' # docker-compose 사용 버전 networks: # docker container 내부 네트워크 섧정 test-network: name: test-network # 네트워크 이름 ipam: driver: default # 네트워크 드라이버 config: - subnet: 123.133.134.0/16 # 네트워크 사용 대역 services: # docker 컨테이너 서비스 설정 ca.orgapeer.com: # 서비스 이름 container_name: ca.orgapeer.com # 컨테이너 이름 image: 'hyperledger/fabric-ca:1.4.9' # 사용하는 docker image 이름 environment: # docker container 내부에서 사용하는 환경변수 설정 - FABRIC_CA_SERVER_HOME=/etc/hyperledger/fabric-ca # ca server home 경로 - FABRIC_CA_SERVER_CSR_CN=ca.orgapeer.com # ca server cn(이름) - FABRIC_CA_SERVER_CSR_HOSTS=ca.orgapeer.com # ca server 호스트 - FABRIC_CA_SERVER_DEBUG=true # ca server 로깅 설정 - FABRIC_CA_SERVER_CA_NAME=ca-apeer # ca server 이름 - FABRIC_CA_SERVER_TLS_ENABLED=false # ca server tls 통신 여부 - FABRIC_CA_SERVER_PORT=7054 # ca server 사용 포트 - FABRIC_CA_SERVER_SIGNING_DEFAULT_EXPIRY=876600h # ca server 에서 발급하는 인증서 유효기간(약 100년) - FABRIC_CA_SERVER_SIGNING_PROFILES_TLS_EXPIRY=876600h # ca server 에서 발급하는 인증서(TLS) 유효기간(약 100년) - FABRIC_CA_SERVER_CSR_CA_EXPIRY=876600h # ca server root 인증서 유효기간(약 100년) - TZ=Asia/Seoul # 컨테이너 타임존 설정 ports: # 컨테이너 외부와 포트 포워딩 설정 - '7054:7054' command: sh -c 'fabric-ca-server start -b admin:adminpw -d' # 컨테이너 기동하면서 실행되는 커맨드 volumes: # 컨테이너 외부와 마운트 설정 - '../crypto-config:/crypto-config' # 발급 받은 인증서 경로 - '../../data/ca/ca.orgapeer.com:/etc/hyperledger/fabric-ca' # ca server 데이터 백업을 위한 경로 networks: # 사용하는 네트워크 - test-network ca.orgorderer.com: container_name: ca.orgorderer.com image: 'hyperledger/fabric-ca:1.4.9' environment: - FABRIC_CA_SERVER_HOME=/etc/hyperledger/fabric-ca - FABRIC_CA_SERVER_CSR_CN=ca.orgorderer.com - FABRIC_CA_SERVER_CSR_HOSTS=ca.orgorderer.com - FABRIC_CA_SERVER_DEBUG=true - FABRIC_CA_SERVER_CA_NAME=ca-orderer - FABRIC_CA_SERVER_TLS_ENABLED=false - FABRIC_CA_SERVER_PORT=8054 - FABRIC_CA_SERVER_SIGNING_DEFAULT_EXPIRY=876600h - FABRIC_CA_SERVER_SIGNING_PROFILES_TLS_EXPIRY=876600h - FABRIC_CA_SERVER_CSR_CA_EXPIRY=876600h - TZ=Asia/Seoul ports: - '8054:8054' command: sh -c 'fabric-ca-server start -b admin:adminpw -d' volumes: - '../crypto-config:/crypto-config' - '../../data/ca/ca.orgorderer.com:/etc/hyperledger/fabric-ca' networks: - test-network
docker 컨테이너 기동
docker-compose -f /home/fabric/infra/compose-files/docker-compose-ca.yaml up -d ca.orgapeer.com ca.orgorderer.com
docker 컨테이너 확인
[root@localhost infra]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c8c0f51af37e hyperledger/fabric-ca:1.4.9 "sh -c 'fabric-ca-se…" 4 minutes ago Up 2 minutes 7054/tcp, 0.0.0.0:8054->8054/tcp ca.orgorderer.com 56af20ba64c3 hyperledger/fabric-ca:1.4.9 "sh -c 'fabric-ca-se…" 4 minutes ago Up 2 minutes 0.0.0.0:7054->7054/tcp ca.orgapeer.com
본 문서에서 네트워크 구축 시 발급받아야 하는 인증서는 아래와 같습니다.
인증서 폴더 구조는 fabric에서 제공하는 테스트용 인증서 발급툴인 cryptogen
의 폴더 구조와 비슷하게 사용합니다.
├── admincerts
├── ca-certs
├── ordererOrganizations
│ └── orgorderer.com
│ ├── msp
│ │ ├── admincerts
│ │ ├── cacerts
│ │ ├── keystore
│ │ ├── signcerts
│ │ ├── tlscacerts
│ │ └── user
│ ├── orderers
│ │ └── orderer0.orgorderer.com
│ │ ├── msp
│ │ │ ├── admincerts
│ │ │ ├── cacerts
│ │ │ ├── keystore
│ │ │ ├── signcerts
│ │ │ ├── tlscacerts
│ │ │ └── user
│ │ └── tls
.....................................
│ └── users
│ └── Admin@orgorderer.com
│ └── msp
│ ├── admincerts
│ ├── cacerts
│ ├── keystore
│ ├── signcerts
│ └── user
└── peerOrganizations
└── orgapeer.com
├── msp
│ ├── admincerts
│ ├── cacerts
│ ├── keystore
│ ├── signcerts
│ ├── tlscacerts
│ └── user
├── peers
│ ├── peer0.orgapeer.com
│ │ ├── msp
│ │ │ ├── admincerts
│ │ │ ├── cacerts
│ │ │ ├── keystore
│ │ │ ├── signcerts
│ │ │ ├── tlscacerts
│ │ │ └── user
│ │ └── tls
.....................................
└── users
└── Admin@orgapeer.com
└── msp
├── admincerts
├── cacerts
├── keystore
├── signcerts
└── user
ca server에서 인증서를 발급받기 전에는 ca server에 발급받을 인증서 정보를 미리 가입을 진행해야 합니다.
인증서 정보 가입은 ca server 컨테이너 내부에서 진행합ㄴ디ㅏ.
docker exec -it 컨테이너 이름 sh or bash
명령어를 사용하여 컨테이너 내부로 진입할 수 있습니다.
ca.orgapeer.com 컨테이너 내부 진입
docker exec -it ca.orgapeer.com bash
apeer ca server admin 인증서 발급 (인증서 정보 가입을 위한 권한 취득)
fabric-ca-client enroll -d -u http://admin:adminpw@ca.orgapeer.com:7054
apeer 조직 인증서 정보 | 아이디 | 패스워드 |
---|---|---|
peer0.orgapeer.com | peer0.orgapeer.com | peer0_apeerpw |
peer1.orgapeer.com | peer1.orgapeer.com | peer1_apeerpw |
apeer admin | admin-apeer | adminpw |
apeer 피어 인증서 정보 가입
fabric-ca-client register -d --id.name 인증서 아이디 --id.secret 인증서 패스워드 --id.type 타입
fabric-ca-client register -d --id.name peer0.orgapeer.com --id.secret peer0_apeerpw --id.type peer fabric-ca-client register -d --id.name peer1.orgapeer.com --id.secret peer1_apeerpw --id.type peer
apeer admin 인증서 정보 가입
fabric-ca-client register -d --id.name admin-apeer --id.secret adminpw --id.attrs "hf.Registrar.Roles=client,hf.Registrar.Attributes=*,hf.Revoker=true,hf.GenCRL=true,admin=true:ecert,abac.init=true:ecert"
인증서 발급 또한 ca server 컨테이너 내부에서 진행합니다.
docker exec -it 컨테이너 이름 sh or bash
명령어를 사용하여 컨테이너 내부로 진입할 수 있습니다.
먼저 인증서 발급 이후 위 폴더 구조처럼 폴더를 정리합니다.
인증서 경로 폴더 생성
mkdir -p /crypto-config/ca-certs
mkdir -p /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/msp/tlscacerts mkdir -p /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/msp/admincerts mkdir -p /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/tls
mkdir -p /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/msp/tlscacerts mkdir -p /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/msp/admincerts mkdir -p /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/tls
mkdir -p /crypto-config/peerOrganizations/orgapeer.com/users/Admin@orgapeer.com/msp/admincerts
mkdir -p /crypto-config/peerOrganizations/orgapeer.com/msp/tlscacerts mkdir -p /crypto-config/peerOrganizations/orgapeer.com/msp/admincerts
apeer 조직의 msp 인증서 발급
fabric-ca-client getcacert -d -u URL -M 발급경로
fabric-ca-client getcacert -d -u http://admin:adminpw@ca.orgapeer.com:7054 -M /tmp/orgs/apeer/msp
apeer 피어,admin msp 인증서 발급
fabric-ca-client enroll -d -u URL -M 발급경로
fabric-ca-client enroll -d -u http://peer0.orgapeer.com:peer0_apeerpw@ca.orgapeer.com:7054 -M /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/msp fabric-ca-client enroll -d -u http://peer1.orgapeer.com:peer1_apeerpw@ca.orgapeer.com:7054 -M /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/msp fabric-ca-client enroll -d -u http://admin-apeer:adminpw@ca.orgapeer.com:7054 -M /tmp/orgs/apeer/admin/msp
apeer 피어 tls 인증서 발급
fabric-ca-client enroll -d --enrollment.profile tls -u URL -M 발급경로 --csr.hosts 호스트명
fabric-ca-client enroll -d --enrollment.profile tls -u http://peer0.orgapeer.com:peer0_apeerpw@ca.orgapeer.com:7054 -M /tmp/orgs/apeer/peer0/tls --csr.hosts peer0.orgapeer.com fabric-ca-client enroll -d --enrollment.profile tls -u http://peer1.orgapeer.com:peer1_apeerpw@ca.orgapeer.com:7054 -M /tmp/orgs/apeer/peer1/tls --csr.hosts peer1.orgapeer.com
발급받은 인증서들을 폴더 구조에 맞게 이동시킨다.
ca 인증서 복사cp /etc/hyperledger/fabric-ca/ca-cert.pem /crypto-config/ca-certs/ca.orgapeer.com-cert.pem
apeer 피어 tls 인증서 복사
cp /tmp/orgs/apeer/peer0/tls/signcerts/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/tls/server.crt cp /tmp/orgs/apeer/peer0/tls/keystore/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/tls/server.key
cp /tmp/orgs/apeer/peer1/tls/signcerts/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/tls/server.crt cp /tmp/orgs/apeer/peer1/tls/keystore/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/tls/server.key
apeer 조직의 msp 인증서 복사
cp -r /tmp/orgs/apeer/msp /crypto-config/peerOrganizations/orgapeer.com/
apeer 피어 admin msp 인증서 복사
cp -r /tmp/orgs/apeer/admin/msp /crypto-config/peerOrganizations/orgapeer.com/users/Admin@orgapeer.com/
tlsca 인증서 복사
cp /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/msp/cacerts/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/msp/tlscacerts cp /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/msp/cacerts/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/msp/tlscacerts cp /crypto-config/peerOrganizations/orgapeer.com/msp/cacerts/* /crypto-config/peerOrganizations/orgapeer.com/msp/tlscacerts
admin 인증서 복사
cp /crypto-config/peerOrganizations/orgapeer.com/users/Admin@orgapeer.com/msp/signcerts/* /crypto-config/peerOrganizations/orgapeer.com/users/Admin@orgapeer.com/msp/admincerts cp /crypto-config/peerOrganizations/orgapeer.com/users/Admin@orgapeer.com/msp/signcerts/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/msp/admincerts cp /crypto-config/peerOrganizations/orgapeer.com/users/Admin@orgapeer.com/msp/signcerts/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/msp/admincerts cp /crypto-config/peerOrganizations/orgapeer.com/users/Admin@orgapeer.com/msp/signcerts/* /crypto-config/peerOrganizations/orgapeer.com/msp/admincerts
msp key파일 이름 변경
mv /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/msp/keystore/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer0.orgapeer.com/msp/keystore/server.key mv /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/msp/keystore/* /crypto-config/peerOrganizations/orgapeer.com/peers/peer1.orgapeer.com/msp/keystore/server.key mv /crypto-config/peerOrganizations/orgapeer.com/users/Admin@orgapeer.com/msp/keystore/* /crypto-config/peerOrganizations/orgapeer.com/users/Admin@orgapeer.com/msp/keystore/server.key
ca server에서 인증서를 발급받기 전에는 ca server에 발급받을 인증서 정보를 미리 가입을 진행해야 합니다.
인증서 정보 가입은 ca server 컨테이너 내부에서 진행합니다.
docker exec -it 컨테이너 이름 sh or bash
명령어를 사용하여 컨테이너 내부로 진입할 수 있습니다.
ca.orgorderer.com 컨테이너 내부 진입
docker exec -it ca.orgorderer.com bash
orderer ca server admin 인증서 발급 (인증서 정보 가입을 위한 권한 취득)
fabric-ca-client enroll -d -u http://admin:adminpw@ca.orgorderer.com:8054
orderer 조직 인증서 정보 | 아이디 | 패스워드 |
---|---|---|
orderer0.orgorderer.com | orderer0.orgorderer.com | orderer0_pw |
orderer1.orgorderer.com | orderer1.orgorderer.com | orderer1_pw |
orderer2.orgorderer.com | orderer2.orgorderer.com | orderer2_pw |
orderer admin | admin-orderer | adminpw |
orderer 피어 인증서 정보 가입
fabric-ca-client register -d --id.name 인증서 아이디 --id.secret 인증서 패스워드 --id.type 타입
fabric-ca-client register -d --id.name orderer0.orgorderer.com --id.secret orderer0_pw --id.type orderer fabric-ca-client register -d --id.name orderer1.orgorderer.com --id.secret orderer1_pw --id.type orderer fabric-ca-client register -d --id.name orderer2.orgorderer.com --id.secret orderer2_pw --id.type orderer
orderer admin 인증서 정보 가입
fabric-ca-client register -d --id.name admin-orderer --id.secret adminpw --id.attrs "admin=true:ecert"
인증서 발급 또한 ca server 컨테이너 내부에서 진행합니다.
docker exec -it 컨테이너 이름 sh or bash
명령어를 사용하여 컨테이너 내부로 진입할 수 있습니다.
먼저 인증서 발급 이후 위 폴더 구조처럼 폴더를 정리합니다.
인증서 경로 폴더 생성
mkdir -p /crypto-config/ca-certs
mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/msp/tlscacerts mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/msp/admincerts mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/tls
mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/msp/tlscacerts mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/msp/admincerts mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/tls
mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/msp/tlscacerts mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/msp/admincerts mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/tls
mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/msp/admincerts
mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/msp/tlscacerts mkdir -p /crypto-config/ordererOrganizations/orgorderer.com/msp/admincerts
orderer 조직의 msp 인증서 발급
fabric-ca-client getcacert -d -u URL -M 발급경로
fabric-ca-client getcacert -d -u http://admin:adminpw@ca.orgorderer.com:8054 -M /tmp/orgs/orderer/msp
orderer 피어,admin msp 인증서 발급
fabric-ca-client enroll -d -u URL -M 발급경로
fabric-ca-client enroll -d -u http://orderer0.orgorderer.com:orderer0_pw@ca.orgorderer.com:8054 -M /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/msp fabric-ca-client enroll -d -u http://orderer1.orgorderer.com:orderer1_pw@ca.orgorderer.com:8054 -M /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/msp fabric-ca-client enroll -d -u http://orderer2.orgorderer.com:orderer2_pw@ca.orgorderer.com:8054 -M /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/msp fabric-ca-client enroll -d -u http://admin-orderer:adminpw@ca.orgorderer.com:8054 -M /tmp/orgs/orderer/admin/msp
orderer 피어 tls 인증서 발급
fabric-ca-client enroll -d --enrollment.profile tls -u URL -M 발급경로 --csr.hosts 호스트명
fabric-ca-client enroll -d --enrollment.profile tls -u http://orderer0.orgorderer.com:orderer0_pw@ca.orgorderer.com:8054 -M /tmp/orgs/orderer/orderer0/tls --csr.hosts orderer0.orgorderer.com fabric-ca-client enroll -d --enrollment.profile tls -u http://orderer1.orgorderer.com:orderer1_pw@ca.orgorderer.com:8054 -M /tmp/orgs/orderer/orderer1/tls --csr.hosts orderer1.orgorderer.com fabric-ca-client enroll -d --enrollment.profile tls -u http://orderer2.orgorderer.com:orderer2_pw@ca.orgorderer.com:8054 -M /tmp/orgs/orderer/orderer2/tls --csr.hosts orderer2.orgorderer.com
발급받은 인증서들을 폴더 구조에 맞게 이동시킨다.
ca 인증서 복사cp /etc/hyperledger/fabric-ca/ca-cert.pem /crypto-config/ca-certs/ca.orgorderer.com-cert.pem
orderer 피어 tls 인증서 복사
cp /tmp/orgs/orderer/orderer0/tls/signcerts/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/tls/server.crt cp /tmp/orgs/orderer/orderer0/tls/keystore/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/tls/server.key
cp /tmp/orgs/orderer/orderer1/tls/signcerts/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/tls/server.crt cp /tmp/orgs/orderer/orderer1/tls/keystore/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/tls/server.key
cp /tmp/orgs/orderer/orderer2/tls/signcerts/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/tls/server.crt cp /tmp/orgs/orderer/orderer2/tls/keystore/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/tls/server.key
orderer 조직의 msp 인증서 복사
cp -r /tmp/orgs/orderer/msp /crypto-config/ordererOrganizations/orgorderer.com/
orderer 피어 admin msp 인증서 복사
cp -r /tmp/orgs/orderer/admin/msp /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/
tlsca 인증서 복사
cp /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/msp/cacerts/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/msp/tlscacerts cp /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/msp/cacerts/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/msp/tlscacerts cp /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/msp/cacerts/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/msp/tlscacerts cp /crypto-config/ordererOrganizations/orgorderer.com/msp/cacerts/* /crypto-config/ordererOrganizations/orgorderer.com/msp/tlscacerts
admin 인증서 복사
cp /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/msp/signcerts/* /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/msp/admincerts cp /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/msp/signcerts/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/msp/admincerts cp /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/msp/signcerts/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/msp/admincerts cp /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/msp/signcerts/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/msp/admincerts cp /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/msp/signcerts/* /crypto-config/ordererOrganizations/orgorderer.com/msp/admincerts
msp key파일 이름 변경
mv /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/msp/keystore/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer0.orgorderer.com/msp/keystore/server.key mv /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/msp/keystore/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer1.orgorderer.com/msp/keystore/server.key mv /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/msp/keystore/* /crypto-config/ordererOrganizations/orgorderer.com/orderers/orderer2.orgorderer.com/msp/keystore/server.key mv /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/msp/keystore/* /crypto-config/ordererOrganizations/orgorderer.com/users/Admin@orgorderer.com/msp/keystore/server.key
정상적으로 인증서가 발급되었다면 아래와 같은 폴더 구조가 생성됩니다.
├── ca-certs
│ ├── ca.orgapeer.com-cert.pem
│ └── ca.orgorderer.com-cert.pem
├── ordererOrganizations
│ └── orgorderer.com
│ ├── msp
│ │ ├── IssuerPublicKey
│ │ ├── IssuerRevocationPublicKey
│ │ ├── admincerts
│ │ │ └── cert.pem
│ │ ├── cacerts
│ │ │ └── ca-orgorderer-com-8054.pem
│ │ ├── keystore
│ │ ├── signcerts
│ │ ├── tlscacerts
│ │ │ └── ca-orgorderer-com-8054.pem
│ │ └── user
│ ├── orderers
│ │ ├── orderer0.orgorderer.com
│ │ │ ├── msp
│ │ │ │ ├── IssuerPublicKey
│ │ │ │ ├── IssuerRevocationPublicKey
│ │ │ │ ├── admincerts
│ │ │ │ │ └── cert.pem
│ │ │ │ ├── cacerts
│ │ │ │ │ └── ca-orgorderer-com-8054.pem
│ │ │ │ ├── keystore
│ │ │ │ │ └── server.key
│ │ │ │ ├── signcerts
│ │ │ │ │ └── cert.pem
│ │ │ │ ├── tlscacerts
│ │ │ │ │ └── ca-orgorderer-com-8054.pem
│ │ │ │ └── user
│ │ │ └── tls
│ │ │ ├── server.crt
│ │ │ └── server.key
│ │ ├── orderer1.orgorderer.com
│ │ │ ├── msp
│ │ │ │ ├── IssuerPublicKey
│ │ │ │ ├── IssuerRevocationPublicKey
│ │ │ │ ├── admincerts
│ │ │ │ │ └── cert.pem
│ │ │ │ ├── cacerts
│ │ │ │ │ └── ca-orgorderer-com-8054.pem
│ │ │ │ ├── keystore
│ │ │ │ │ └── server.key
│ │ │ │ ├── signcerts
│ │ │ │ │ └── cert.pem
│ │ │ │ ├── tlscacerts
│ │ │ │ │ └── ca-orgorderer-com-8054.pem
│ │ │ │ └── user
│ │ │ └── tls
│ │ │ ├── server.crt
│ │ │ └── server.key
│ │ └── orderer2.orgorderer.com
│ │ ├── msp
│ │ │ ├── IssuerPublicKey
│ │ │ ├── IssuerRevocationPublicKey
│ │ │ ├── admincerts
│ │ │ │ └── cert.pem
│ │ │ ├── cacerts
│ │ │ │ └── ca-orgorderer-com-8054.pem
│ │ │ ├── keystore
│ │ │ │ └── server.key
│ │ │ ├── signcerts
│ │ │ │ └── cert.pem
│ │ │ ├── tlscacerts
│ │ │ │ └── ca-orgorderer-com-8054.pem
│ │ │ └── user
│ │ └── tls
│ │ ├── server.crt
│ │ └── server.key
│ └── users
│ └── Admin@orgorderer.com
│ └── msp
│ ├── IssuerPublicKey
│ ├── IssuerRevocationPublicKey
│ ├── admincerts
│ │ └── cert.pem
│ ├── cacerts
│ │ └── ca-orgorderer-com-8054.pem
│ ├── keystore
│ │ └── server.key
│ ├── signcerts
│ │ └── cert.pem
│ └── user
└── peerOrganizations
└── orgapeer.com
├── msp
│ ├── IssuerPublicKey
│ ├── IssuerRevocationPublicKey
│ ├── admincerts
│ │ └── cert.pem
│ ├── cacerts
│ │ └── ca-orgapeer-com-7054.pem
│ ├── keystore
│ ├── signcerts
│ ├── tlscacerts
│ │ └── ca-orgapeer-com-7054.pem
│ └── user
├── peers
│ ├── peer0.orgapeer.com
│ │ ├── msp
│ │ │ ├── IssuerPublicKey
│ │ │ ├── IssuerRevocationPublicKey
│ │ │ ├── admincerts
│ │ │ │ └── cert.pem
│ │ │ ├── cacerts
│ │ │ │ └── ca-orgapeer-com-7054.pem
│ │ │ ├── keystore
│ │ │ │ └── server.key
│ │ │ ├── signcerts
│ │ │ │ └── cert.pem
│ │ │ ├── tlscacerts
│ │ │ │ └── ca-orgapeer-com-7054.pem
│ │ │ └── user
│ │ └── tls
│ │ ├── server.crt
│ │ └── server.key
│ └── peer1.orgapeer.com
│ ├── msp
│ │ ├── IssuerPublicKey
│ │ ├── IssuerRevocationPublicKey
│ │ ├── admincerts
│ │ │ └── cert.pem
│ │ ├── cacerts
│ │ │ └── ca-orgapeer-com-7054.pem
│ │ ├── keystore
│ │ │ └── server.key
│ │ ├── signcerts
│ │ │ └── cert.pem
│ │ ├── tlscacerts
│ │ │ └── ca-orgapeer-com-7054.pem
│ │ └── user
│ └── tls
│ ├── server.crt
│ └── server.key
└── users
└── Admin@orgapeer.com
└── msp
├── IssuerPublicKey
├── IssuerRevocationPublicKey
├── admincerts
│ └── cert.pem
├── cacerts
│ └── ca-orgapeer-com-7054.pem
├── keystore
│ └── server.key
├── signcerts
│ └── cert.pem
└── user
이로써 Fabric ca 구축 및 인증서 발급을 완료하였습니다.
fabric 네트워크를 구축하기위한 channel, anchor peer 트렌젝션 및 genesis block 생성을 진행하겠습니다.