사용자 지정 도메인 이름을 사용하여 API Gateway API를 호출할 때 인증서 만료 또는 "유효하지 않은 인증서" 오류를 해결하려면 어떻게 해야 합니까?

2분 분량
0

API Gateway API의 사용자 지정 도메인 이름을 설정했습니다. AWS Certificate Manager(ACM) 인증서가 만료되었거나 "유효하지 않은 인증서" 오류가 발생했습니다.

간략한 설명

“인증서 만료 오류”는 사용자 지정 도메인 이름을 만드는 데 사용된 인증서가 만료될 때 발생합니다.

인증서의 CN(일반 이름) 또는 주체 이름이 일치하지 않으면 "유효하지 않은 인증서 오류"가 발생합니다.

해결 방법

ACM 인증서 만료

인증서가 만료된 경우 다음과 비슷한 오류가 발생할 수 있습니다. "SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED]"

인증서 만료를 확인하려면 다음과 비슷한 s_client OpenSSL 명령을 실행합니다.

openssl s_client -servername <custom domain name> -connect <custom domain name>:443 2>/dev/null | openssl x509 -noout -dates

인증서를 갱신하려면 AWS Certificate Manager에서 관리형 인증서 갱신을 참조하십시오.

인증서가 만료되지 않도록 ACM에서 가져온 인증서의 만료를 모니터링하는 방법을 참조하십시오.

ACM 인증서 불일치

인증서의 CN 또는 주체 이름이 일치하지 않는 경우 다음과 비슷한 오류가 발생합니다. "ERR_CERT_COMMON_NAME_INVALID"

문제를 해결하려면 다음 설정을 확인하십시오.

  • 사용자 지정 도메인 이름을 생성하는 데 사용된 인증서가 ACM에 있습니다.
  • 인증서 주체 이름 또는 CN에 사용자 지정 도메인 이름이 포함되어 있습니다. 예를 들어 사용자 지정 도메인 이름이 custom.example.com인 경우 주체 이름 또는 CN에 custom.example.com 또는 *example.com이 포함되어야 합니다.
  • API Gateway 사용자 지정 도메인 이름을 가리키는 DNS 레코드가 있어야 합니다. DNS 레코드는 CNAME 또는 A 유형일 수 있습니다.

참고: 인증서에 SAN(주체 대체 이름)으로 나열된 사용자 지정 도메인이 없기 때문에 사용자 지정 도메인 이름이 execute-api 엔드포인트를 직접 가리킬 수 없습니다.

구성 예시:

custom.example.com -> CNAME record -> d-yg54udirl4.execute-api.us-east-1.amazonaws.com

다음과 같이 사용자 지정 도메인에서 dig 명령을 실행하여 구성을 확인할 수 있습니다.

$ dig custom.example.com

관련 정보

API Gateway 사용자 지정 도메인 이름에 대한 DNS 확인 또는 인증서 불일치 오류를 해결하려면 어떻게 해야 합니까?