리턴 코드 확인 : 21 (첫 번째 인증서를 확인할 수 없음)


0

자체 서명 인증이 있으며 API에 로컬로 사용하고 있습니다. 보시다시피 스크린 샷은 서버 측에 Docker 및 Apache를 사용하여 정상적으로 작동합니다.

잘 작동하는 SSL

문제는 reactsl 앱을 사용하려고 할 때 openssl 명령 줄을 사용하여 인증을 확인할 때 요청이 실패하는 것입니다. 오류가 발생했습니다.

Verify return code: 21 (unable to verify the first certificate)

가능한 해결책을 찾았지만 그들이 말하는 것에 대해 전혀 모르는 풀 체인을 사용하는 것이 좋습니다. 인증서와 키가 2 개뿐입니다

여기에 이미지 설명을 입력하십시오

누군가이 성가신 문제를 해결하기 위해 올바른 방향으로 나를 안내 할 수 있다면 놀랍습니다.

미리 감사 드리며 더 많은 통찰력을 제공 할 수 있는지 알려주십시오.


인증서 파일도 CA 인증서로 사용하면이 오류가 제거됩니다.
Romeo Ninov

openssl x509 -noout -text -in <cert file>출력을 실행 하여 질문에 붙여 넣습니다.
garethTheRed

답변:


0

인증서를 확인하려면 트러스트 앵커에 연결해야합니다. openssl이 트러스트 앵커에서 keyUsage확장을 확인합니다. 존재 keyCertSign하는 경우 최소한 포함해야합니다 . 이 확장이 존재하지만 포함하지 않으면 keyCertSign오류 21이 반환됩니다.

또한 클라이언트 ( openssl s_client)는 트러스트 앵커로 사용할 인증서를 알고 있어야합니다. 다음과 같이 옵션 openssl과 함께 추가 트러스트 앵커를 사용 하도록 구성 -CAfile합니다.

openssl s_client -CAfile <your cert file> -connect api.dev.thetripguru.com:443


1
안녕하세요, 인증서 파일없이 사용하는 것과 같은 응답을 받았습니다
Pablo Morales
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.