Amazon API Gateway에서 API 요청에 대해 다음과 비슷한 오류를 반환했습니다. "Execution failed due to configuration error: General SSLEngine problem"
해결 방법
API Gateway API 요청은 백엔드에서 SSL 핸드셰이크를 수행합니다. 성공적인 API Gateway SSL 핸드셰이크에는 다음 요구 사항이 포함되어야 합니다.
지원되는 CA
CA가 HTTP, HTTP 프록시 및 프라이빗 통합을 위한 API Gateway에서 지원되어야 합니다. 운영 체제에서 다음 OpenSSL 명령을 실행하여 CA 지문을 확인합니다.
Linux
openssl x509 -in cert.pem -fingerprint -sha256 -noout
openssl x509 -in cert.pem -fingerprint -sha1 -noout
Windows
openssl x509 -noout -fingerprint -sha256 -inform pem -in [certificate-file.crt]
openssl x509 -noout -fingerprint -sha1 -inform pem -in [certificate-file.crt]
만료되지 않은 유효한 ACM 인증서
다음 OpenSSL 명령을 실행하여 인증서의 만료 날짜를 확인합니다.
openssl x509 -in certificate.crt -text -noout
출력에서 유효 타임스탬프를 확인합니다.
Validity
Not Before: Apr 29 12:49:02 2020 GMT
Not After : Apr 29 12:49:02 2021 GMT
이 출력 예시에서 인증서는 2020년 4월 29일에 유효하고, 2021년 4월 29일 이후에 만료됩니다.
유효한 CA 인증서
다음 OpenSSL 명령을 실행하여 CA 인증서 구성을 확인합니다.
openssl s_client -connect example.com:443 -showcerts
다음을 확인합니다.
- 중간 및 인증서의 주체가 엔티티 인증서의 발급자와 일치합니다.
- 루트 인증서의 주체가 중간 인증서의 발급자와 일치합니다.
- 루트 인증서의 주체와 발급자가 동일합니다.
2048비트를 초과하지 않는 인증서
다음 OpenSSL 명령을 실행하여 인증서 크기를 확인합니다.
openssl x509 -in badssl-com.pem -text -noout | grep -E '(Public-Key):'
참고: 인증서 크기는 2048비트를 초과할 수 없습니다.
인증서가 이러한 요구 사항을 충족하지 않는 경우 먼저 프라이빗 CA를 업데이트합니다. 이후 AWS Certificate Manager(ACM)를 사용하여 새 인증서를 다시 발급합니다.
관련 정보
API Gateway의 REST API 프라이빗 통합