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

최종 업데이트 날짜: 2022년 3월 14일

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

간략한 설명

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

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

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

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

해결 방법

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

참고: AWS CLI 명령을 실행할 때 오류가 발생하는 경우 최신 버전의 AWS CLI를 사용하고 있는지 확인하세요.

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

참고: 인증서 체인이 올바른 순서가 아닌 경우 다음 오류 메시지가 나타날 수 있습니다. "An error occurred (MalformedCertificate) when calling the UploadServerCertificate operation: Unable to validate certificate chain. 인증서 체인은 즉시 서명 인증서로 시작해야 하며 그 다음에 중개자가 순서대로 따라와야 합니다. 유효하지 않은 인증서 체인 내의 인덱스: -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-----

참고: 인증서에 선행 또는 후행 공백이 없고 BEGINEND 블록 외에 접두사 또는 접미사가 포함되어 있지 않은지 확인하세요.

"MalformedCertificate: Unable to parse private key" 오류 메시지를 방지하려면 PEM 인코딩 키는 다음 형식을 사용해야 합니다.

-----BEGIN RSA PRIVATE KEY-----
Base64-encoded private key
-----END RSA PRIVATE KEY-----

인증서 업로드

다음과 유사한 AWS CLI 명령 upload-server-certificate를 실행하여 인증서를 업로드합니다.

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

참고:

  • 파일 이름 및 YourCertificate를 업로드된 파일 및 인증서 이름으로 바꾸세요.
  • API 요청의 인증서 본문, 인증서 체인 및 개인 키 파라미터에 "file://" 접두사를 지정해야 합니다. 그렇지 않으면 요청이 실패하고 "MalformedCertificate: Unknown" 오류 메시지가 표시됩니다.

인증서가 업로드되면 AWS 명령 upload-server-certificate는 인증서의 Amazon 리소스 이름(ARN), 식별 이름, 식별자(ID) 및 만료 날짜를 포함한 업로드된 인증서에 대한 메타데이터를 반환합니다.

업로드된 인증서를 보려면 AWS CLI 명령 list-server-certificates를 실행합니다.

aws iam list-server-certificates

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

인증서를 삭제하려면 다음과 유사한 AWS CLI 명령 delete-server-certificate를 실행합니다.

$ aws iam delete-server-certificate --server-certificate-name YourCertificate

이 문서가 도움이 되었나요?


결제 또는 기술 지원이 필요하세요?