SSL 인증서를 AWS Identity and Access Management(IAM)에 업로드하고 가져오려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2020년 8월 12일

SSL 인증서를 AWS Identity and Access Management(IAM)에 업로드하고 가져오려면 어떻게 해야 합니까?

간략한 설명

SSL 인증서를 AWS Certificate Manager(ACM)에 업로드하는 모범 사례입니다. 현재 ACM 또는 연관된 AWS 리소스에서 지원하지 않는 인증서 알고리즘 및 키 크기를 사용 중인 경우 AWS 명령줄 인터페이스(AWS CLI)를 사용하여 SSL 인증서를 IAM에 업로드할 수도 있습니다.

IAM으로 SSL 인증서를 가져오려면 먼저 다음 사항이 충족되어야 합니다.

  • 업로드 시점에 인증서가 유효해야 합니다. 인증서 유효 기간이 시작되기 전이나 만료된 후에는 인증서를 업로드할 수 없습니다.
  • 인증서, 프라이빗 키 및 인증서 체인이 PEM으로 인코딩되어야 합니다. 자세한 내용은 서버 인증서로 작업에서 예제 PEM 인코딩 인증서 체인 섹션을 참조하십시오.

인증서가 이러한 기준을 충족하는지 확인한 후 인증서 체인이 올바른 순서인지 확인하고 인증서를 업로드하십시오.

​해결 방법

인증서 체인이 올바른 순서인지 확인

인증서 체인은 CA(인증 기관)에서 생성한 인증서로 시작하고 해당 CA의 루트 인증서로 끝나야 합니다.

참고: 인증서 체인이 올바른 순서가 아닌 경우 다음 오류 메시지가 나타날 수 있습니다. "An error occurred (MalformedCertificate) when calling the UploadServerCertificate operation: Unable to validate certificate chain. The certificate chain must start with the immediate signing certificate, followed by any intermediaries in order. The index within the chain of the invalid certificate is: -1"

PEM 인코딩 인증서 체인은 다음과 같이 "-----BEGIN CERTIFICATE-----"로 시작해야 하고 "-----END CERTIFICATE-----"로 끝나야 합니다.  

-----BEGIN CERTIFICATE-----
Base64-encoded Intermediate certificate 2
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Base64-encoded Intermediate certificate 1
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Optional: Base64-encoded Root certificate
-----END CERTIFICATE-----

참고: 인증서 앞이나 뒤에 공백이 없어야 합니다.

인증서 업로드

다음 명령을 실행하여 인증서를 업로드합니다.

$ aws iam upload-server-certificate --server-certificate-name ExampleCertificate --certificate-body file://Certificate.pem --certificate-chain file://CertificateChain.pem --private-key file://PrivateKey.pem

참고: 파일 이름 및 ExampleCertificate를 업로드된 파일 및 인증서 이름으로 바꾸십시오. 자세한 내용은 upload-server-certificate를 참조하십시오.

인증서가 업로드되면 명령은 인증서의 Amazon 리소스 이름(ARN), 식별 이름, 식별자(ID) 및 만료 날짜를 포함한 업로드된 인증서에 대한 메타데이터를 반환합니다. 다음 명령을 실행하여 업로드된 인증서를 볼 수 있습니다.

aws iam list-server-certificates

참고: Amazon CloudFront에 사용할 서버 인증서를 업로드하는 경우 --path를 사용하여 경로를 지정해야 합니다. 경로는 /cloudfront로 시작해야 하고 경로의 맨 뒤에 슬래시가 있어야 합니다(예: /cloudfront/test/). 자세한 내용은 CloudFront 배포에 대한 사용자 지정 SSL 인증서 사용 문제를 해결하려면 어떻게 해야 합니까?를 참조하십시오.


이 문서가 도움이 되었습니까?


결제 또는 기술 지원이 필요합니까?