클러스터 초기화 - AWS CloudHSM

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

클러스터 초기화

다음 항목의 단계를 완료하여 클러스터를 초기화하십시오. AWS CloudHSM

참고

클러스터를 초기화하기 전에 HSM의 자격 증명 및 신뢰성을 확인할 수 있는 프로세스를 검토합니다. 이 프로세스는 선택 사항이며, 클러스터가 초기화될 때까지만 유효합니다. 클러스터가 초기화된 후에는 이 프로세스를 사용하여 인증서를 가져오거나 HSM을 확인할 수 없습니다.

클러스터 CSR 가져오기

클러스터를 초기화하려면 먼저, 클러스터의 첫 번째 HSM에서 생성된 인증서를 다운로드하여 서명 요청(CSR)에 서명해야 합니다. 단계에 따라 클러스터의 HSM 자격 증명을 확인했다면 이미 CSR이 있는 것이므로 CSR에 서명할 수 있습니다. 그렇지 않으면 AWS CloudHSM 콘솔, AWS Command Line Interface (CLI) 또는 AWS CloudHSM API를 사용하여 지금 CSR을 가져오십시오.

중요

클러스터를 초기화하려면 트러스트 앵커가 RFC 5280을 준수하고 다음 요구 사항을 충족해야 합니다.

  • X509v3 확장을 사용하는 경우 X509v3 기본 제약 조건 확장이 있어야 합니다.

  • 트러스트 앵커는 자체 서명된 인증서여야 합니다.

  • 확장 값은 서로 충돌하지 않아야 합니다.

CSR을 가져오려면(콘솔)
  1. https://console.aws.amazon.com/cloudhsm/home 에서 AWS CloudHSM 콘솔을 엽니다.

  2. 확인할 HSM의 클러스터 자격 증명 옆의 라디오 버튼을 선택합니다.

  3. 작업을 선택합니다. 드롭다운 메뉴에서 초기화를 선택합니다.

  4. HSM을 생성하기 위한 이전 단계를 완료하지 않은 경우, 생성 중인 HSM의 가용 영역을 선택합니다. 그런 다음 생성을 선택합니다.

  5. CSR이 이미 있는 경우에는 이를 다운로드할 수 있는 링크가 나타납니다.

    
						 AWS CloudHSM 콘솔에서 인증서 서명 요청 페이지를 다운로드합니다.
  6. [Cluster CSR]을 선택하여 CSR을 다운로드하고 저장합니다.

CSR (CLI) 을 받으려면
  • 명령 프롬프트에서 다음 describe-clusters 명령을 실행하여 CSR을 추출하고 파일에 저장합니다. <cluster ID>이전에 생성한 클러스터의 ID로 바꿉니다.

    $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \ --output text \ --query 'Clusters[].Certificates.ClusterCsr' \ > <cluster ID>_ClusterCsr.csr
CSR (API) 을 받으려면AWS CloudHSM
  1. DescribeClusters 요청을 보냅니다.

  2. 응답에서 CSR을 추출하고 저장합니다.

CSR에 서명

현재는 자체 서명된 서명 인증서를 만들고 클러스터의 CSR에 서명하는 데 사용해야 합니다. 이 단계에는 CLI가 필요하지 않으며 셸을 AWS 계정과 연결할 필요가 없습니다. CSR에 서명하려면 다음을 수행해야 합니다.

  1. 이전 섹션을 완료합니다 (클러스터 CSR 가져오기 참조).

  2. 프라이빗 키를 만듭니다.

  3. 프라이빗 키를 사용하여 서명 인증서를 만듭니다.

  4. 클러스터 CSR에 서명합니다.

프라이빗 키를 만듭니다

참고

프로덕션 클러스터의 경우 신뢰할 수 있는 임의 소스를 사용하여 안전한 방식으로 키를 생성해야 합니다. 안전한 오프사이트 및 오프라인 HSM이나 이에 상응하는 디바이스를 사용하는 것이 좋습니다. 키를 안전하게 저장하십시오. 키는 클러스터의 ID와 클러스터에 포함된 HSM에 대한 사용자의 단독 제어권을 설정합니다.

개발 및 테스트 중에 원하는 편리한 도구(예: OpenSSL)를 사용하여 클러스터 인증서를 만들고 서명할 수 있습니다. 다음 예에서는 키를 생성하는 방법을 보여줍니다. 키를 사용하여 자체 서명된 인증서를 생성한 후(아래 참조), 안전한 방식으로 저장해야 합니다. AWS CloudHSM 인스턴스에 로그인하려면 인증서가 있어야 하지만 프라이빗 키는 없습니다.

다음 명령을 사용하여 퍼블릭 키를 생성합니다. AWS CloudHSM 클러스터를 초기화할 때는 RSA 2048 인증서 또는 RSA 4096 인증서를 사용해야 합니다.

$ openssl genrsa -aes256 -out customerCA.key 2048 Generating RSA private key, 2048 bit long modulus ........+++ ............+++ e is 65537 (0x10001) Enter pass phrase for customerCA.key: Verifying - Enter pass phrase for customerCA.key:

프라이빗 키를 사용하여 자체 서명된 인증서 생성

프로덕션 클러스터의 프라이빗 키를 생성하는 데 사용하는 신뢰할 수 있는 하드웨어는 해당 키를 통해 자체 서명된 인증서를 생성하기 위한 소프트웨어 도구도 제공해야 합니다. 다음 예에서는 OpenSSL과 이전 단계에서 만든 프라이빗 키를 사용하여 서명 인증서를 생성합니다. 인증서는 10년(3,652일) 동안 유효합니다. 화면의 지침을 읽고 프롬프트의 메시지를 따릅니다.

$ openssl req -new -x509 -days 3652 -key customerCA.key -out customerCA.crt Enter pass phrase for customerCA.key: You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: State or Province Name (full name) [Some-State]: Locality Name (eg, city) []: Organization Name (eg, company) [Internet Widgits Pty Ltd]: Organizational Unit Name (eg, section) []: Common Name (e.g. server FQDN or YOUR name) []: Email Address []:

이 명령은 customerCA.crt 인증서 파일을 생성합니다. 클러스터에 연결할 모든 호스트에 이 인증서를 설치하십시오. AWS CloudHSM 파일에 다른 이름을 지정하거나 호스트의 루트가 아닌 다른 경로에 파일을 저장하는 경우, 그에 따라 클라이언트 구성 파일을 편집해야 합니다. 방금 생성한 인증서와 프라이빗 키를 사용하여 다음 단계에서 클러스터 CSR(인증서 서명 요청)에 서명합니다.

클러스터 CSR에 서명

프로덕션 클러스터의 프라이빗 키를 생성하는 데 사용하는 신뢰할 수 있는 하드웨어는 해당 키를 통해 CSR에 서명하기 위한 도구도 제공해야 합니다. 다음 예에서는 OpenSSL을 사용하여 클러스터의 CSR에 서명합니다. 이 예에서는 이전 단계에서 생성한 프라이빗 키와 자체 서명된 인증서를 사용합니다.

$ openssl x509 -req -days 3652 -in <cluster ID>_ClusterCsr.csr \ -CA customerCA.crt \ -CAkey customerCA.key \ -CAcreateserial \ -out <cluster ID>_CustomerHsmCertificate.crt Signature ok subject=/C=US/ST=CA/O=Cavium/OU=N3FIPS/L=SanJose/CN=HSM:<HSM identifer>:PARTN:<partition number>, for FIPS mode Getting CA Private Key Enter pass phrase for customerCA.key:

이 명령은 <cluster ID>_CustomerHsmCertificate.crt 파일을 생성합니다. 클러스터를 초기화할 때 이 파일을 서명된 인증서로 사용합니다.

클러스터 초기화

서명한 HSM 인증서와 서명 인증서를 사용하여 클러스터를 초기화하십시오. AWS CloudHSM 콘솔, CLI 또는 API를 사용할 수 있습니다. AWS CloudHSM

클러스터를 초기화하려면(콘솔)
  1. https://console.aws.amazon.com/cloudhsm/home 에서 AWS CloudHSM 콘솔을 엽니다.

  2. 확인할 HSM의 클러스터 자격 증명 옆의 라디오 버튼을 선택합니다.

  3. 작업을 선택합니다. 드롭다운 메뉴에서 초기화를 선택합니다.

  4. HSM을 생성하기 위한 이전 단계를 완료하지 않은 경우, 생성 중인 HSM의 가용 영역을 선택합니다. 그런 다음 생성을 선택합니다.

  5. [Download certificate signing request] 페이지에서 [Next]를 선택합니다. [Next]가 비활성화 되어 있는 경우에는 먼저 CSR 또는 인증서 링크 중 하나를 선택합니다. 다음을 선택합니다.

  6. [Sign certificate signing request (CSR)] 페이지에서 [Next]를 선택합니다.

  7. [Upload the certificates] 페이지에서 다음 작업을 수행하십시오.

    1. 클러스터 인증서 옆의 파일 업로드를 선택합니다. 그러면 이전에 서명한 HSM 인증서 위치를 확인하고 선택합니다. 이전 섹션에 나온 단계들을 완료했다면 <cluster ID>_CustomerHsmCertificate.crt라는 파일을 선택합니다.

    2. Issuing certificate(인증서 발급하기) 옆의 파일 업로드를 선택합니다. 그런 다음 서명 인증서를 선택합니다. 이전 섹션에 나온 단계들을 완료했다면 customerCA.crt라는 파일을 선택합니다.

    3. [Upload and initialize]를 선택합니다.

클러스터를 초기화하려면 (CLI)
  • 명령 프롬프트에서 initialize-cluster 명령을 실행합니다. 다음을 제공합니다.

    • 이전에 생성한 클러스터의 ID입니다.

    • 이전에 서명한 HSM 인증서입니다. 이전 섹션에 나온 단계들을 완료하면 <cluster ID>_CustomerHsmCertificate.crt라는 파일에 저장이 됩니다.

    • 서명 인증서입니다. 이전 섹션에 나온 단계를 완료하면 서명 인증서가 customerCA.crt라는 파일에 저장됩니다.

    $ aws cloudhsmv2 initialize-cluster --cluster-id <cluster ID> \ --signed-cert file://<cluster ID>_CustomerHsmCertificate.crt \ --trust-anchor file://customerCA.crt { "State": "INITIALIZE_IN_PROGRESS", "StateMessage": "Cluster is initializing. State will change to INITIALIZED upon completion." }
클러스터 (API) 를 초기화하려면AWS CloudHSM
  • 다음과 함께 InitializeCluster 요청을 전송합니다.

    • 이전에 생성한 클러스터의 ID입니다.

    • 이전에 서명한 HSM 인증서입니다.

    • 서명 인증서입니다.