2단계: 인증서 서명 요청 (CSR) 및 인증서 만들기 - AWS CloudHSM

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

2단계: 인증서 서명 요청 (CSR) 및 인증서 만들기

HTTPS를 활성화하려면 웹 서버에서 SSL/TLS 인증서와 해당되는 프라이빗 키가 필요합니다. AWS CloudHSM에서 SSL/TLS 오프로드를 사용하려면 AWS CloudHSM 클러스터의 HSM에 프라이빗 키를 저장합니다. 이를 위해 사용AWS CloudHSMMicrosoft의 암호화 API에 대한 KSP (키 저장소 공급자): 차세대 (CNG)인증서 서명 요청 (CSR) 을 생성합니다. 그런 다음, 인증서 생성을 위해 CSR에 서명하는 인증 기관(CA)에 CSR을 제공합니다.

CSR 생성

Windows Server의 AWS CloudHSM KSP를 사용하여 CSR을 생성합니다.

인증서 서명 요청(CSR)을 생성하려면

  1. 아직 역할 추가 및 키를 생성하지 않은 경우 Windows Server에 연결합니다. 자세한 내용은 단원을 참조하십시오.인스턴스에 연결Windows Instances용 Amazon EC2 사용 설명서.

  2. 에서 시작AWS CloudHSM클라이언트 데몬.

  3. Windows Server에서 텍스트 편집기를 사용하여 IISCertRequest.inf라는 인증서 요청을 생성합니다. 다음 예제에서는 IISCertRequest.inf 파일의 내용을 보여 줍니다. 이 파일에서 지정할 수 있는 섹션, 키 및 값에 대한 자세한 내용은 Microsoft 설명서를 참조하십시오. ProviderName 값은 변경하지 마십시오.

    [Version] Signature = "$Windows NT$" [NewRequest] Subject = "CN=example.com,C=US,ST=Washington,L=Seattle,O=ExampleOrg,OU=WebServer" HashAlgorithm = SHA256 KeyAlgorithm = RSA KeyLength = 2048 ProviderName = "Cavium Key Storage Provider" KeyUsage = 0xf0 MachineKeySet = True [EnhancedKeyUsageExtension] OID=1.3.6.1.5.5.7.3.1
  4. Windows certreq 명령을 사용해 이전 단계에서 생성한 IISCertRequest.inf 파일에서 CSR을 생성합니다. 다음 예제에서는 CSR을 IISCertRequest.csr이라는 파일에 저장합니다. 인증서 요청 파일에서 다른 파일 이름을 사용한 경우에는 IISCertRequest.inf를 해당되는 파일 이름으로 바꿉니다. 선택에 따라 CSR 파일에서 IISCertRequest.csr을 다른 파일 이름으로 바꿀 수 있습니다.

    C:\>certreq -new IISCertRequest.inf IISCertRequest.csr SDK Version: 2.03 CertReq: Request Created

    IISCertRequest.csr 파일에는 CSR이 포함되어 있습니다. 서명된 인증서를 얻기 위해서는 이 CSR이 필요합니다.

서명된 인증서를 얻기 및 가져오기

프로덕션 환경에서는 일반적으로 CA(인증 기관)을 사용하여 CSR에서 인증서를 생성합니다. 테스트 환경에는 CA가 필요하지 않습니다. CA를 사용하는 경우에는 CSR 파일(IISCertRequest.csr)을 CA에 전송하고 CA를 사용하여 서명된 SSL/TLS 인증서를 생성합니다.

CA 사용의 대안으로 OpenSSL 같은 도구를 사용하여 자체 서명 인증서를 생성할 수 있습니다.

주의

자체 서명된 인증서는 브라우저에서 신뢰하지 않으며 프로덕션 환경에서 사용해서는 안 됩니다. 테스트 환경에서는 이러한 인증서를 사용할 수 있습니다.

다음 절차에서는 자체 서명 인증서를 생성하고 이를 사용해 웹 서버의 CSR을 서명하는 방법을 보여줍니다.

자체 서명된 인증서를 생성하려면

  1. OpenSSL 명령을 사용하여 프라이빗 키를 생성합니다. 선택에 따라 SelfSignedCA.key를 프라이빗 키가 포함된 파일 이름으로 바꿀 수 있습니다.

    openssl genrsa -aes256 -out SelfSignedCA.key 2048 Generating RSA private key, 2048 bit long modulus ......................................................................+++ .........................................+++ e is 65537 (0x10001) Enter pass phrase for SelfSignedCA.key: Verifying - Enter pass phrase for SelfSignedCA.key:
  2. OpenSSL 명령을 사용하여 이전 단계에서 생성한 프라이빗 키를 통해 자체 서명 인증서를 생성합니다. 이것은 대화식 명령입니다. 화면의 지침을 읽고 프롬프트의 메시지를 따릅니다. SelfSignedCA.key를 프라이빗 키(다를 경우)가 포함된 파일 이름으로 바꿉니다. 선택에 따라 SelfSignedCA.crt를 자체 서명 인증서가 포함된 파일 이름으로 바꿀 수 있습니다.

    openssl req -new -x509 -days 365 -key SelfSignedCA.key -out SelfSignedCA.crt Enter pass phrase for SelfSignedCA.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 []:

자체 서명 인증서를 사용하여 웹 서버의 CSR을 서명하려면

  • 다음 OpenSSL 명령을 사용해 프라이빗 키와 자체 서명 인증서를 통해 CSR을 서명합니다. 다음을 해당 데이터(다를 경우)가 포함된 파일 이름으로 바꿉니다.

    • IIS인증서 요청.CSR— 웹 서버의 CSR이 포함된 파일 이름

    • 자체 서명 된 CA.CRT— 자체 서명 인증서가 포함된 파일 이름

    • SelfSignedCA.key— 프라이빗 키가 포함된 파일 이름

    • 아이서트-크릿— 웹 서버의 서명된 인증서가 포함된 파일 이름

    openssl x509 -req -days 365 -in IISCertRequest.csr \ -CA SelfSignedCA.crt \ -CAkey SelfSignedCA.key \ -CAcreateserial \ -out IISCert.crt Signature ok subject=/ST=IIS-HSM/L=IIS-HSM/OU=IIS-HSM/O=IIS-HSM/CN=IIS-HSM/C=IIS-HSM Getting CA Private Key Enter pass phrase for SelfSignedCA.key:

이전 단계를 완료하고 나면 웹 서버에 대한 서명 인증서(IISCert.crt)와 자체 서명 인증서(SelfSignedCA.crt)를 얻게 됩니다. 이러한 파일을 얻었으면 3단계: 웹 서버 구성로 이동합니다.