본문 바로가기
프로그래밍

코드에서 사설 SSL 인증서를 쓰는 도메인에 httpclient 요청시 오류가 발생한다.

by 대도루피 2026. 10. 13.
반응형

 

내부망, 폐쇄망등 사설 SSL 인증서를 쓰는 곳들이 있는데,

사설이 아닌, 인터넷이 잘 되는 곳에서 정상 동작하던 작업들이 안되는 경우가 있다.

 

httpclient 등 java내부에서  https 프로토콜을 사용해서 다른 서비스의 API를 호출해서 사용해야 하는 경우 I/O Error가 발생한다.

 

sun.security.provider.certpath.SunCertPathBUilderException: unable to find valid certification path to requested target

 

이런 오류가 발생한다.. cert 관련된 내용이 있다면 거의 100%..

이 경우 인증할 방법이 없으니, jvm 로컬에 인증서를 등록해줘서 유효하다는 것을 알려줘야한다.

 

아래 방법으로 처리가 가능하다.

# 이 명령어로 인증서를 얻을 수 있다.
openssl s_client -showcerts -connect URL주소 < /dev/null

# 이 명령어로 인증서를 등록한다.
keytool -importcert -alias 인증서명 -file 인증서파일.crt -keystore "%JAVA_HOME%\lib\security\cacerts" -storepass changeit

기본 패스워드가 changeit 이니 참고하시길!

 

 

인증서가 이런 방식으로 다운이 안될경우 브라우저에서 해당 서비스에 접속해서 다운받는 방법도 있다.

 

 

 

 

 

위 캡쳐를 참고해서 내보내기를 통해 인증서 파일을 저장할 수 있는데, 이것을 import 하면 된다!

 

반응형