SSL인증서 JAVA CA인증서에 루트 인증서 추가하는 방법

안녕하세요 한국전자인증 입니다.

JAVA CA인증서에 루트 인증서 추가하는 방법을 알려드립니다.

서버는 클라이언트에게 인증서를 전달해주며, 클라이언트는 서버로부터 전달받은 인증서를 루트인증서저장소(cacerts)에 있는 루트인증서로 신뢰성 검증을 하게 됩니다.

이 때, 클라이언트의 루트인증서저장소(cacerts)에 서버로부터 전달받은 인증서를 검증할 루트인증서가 없다면 신뢰성 검증을 할 수 없어서 통신이 불가능합니다.

해결 방법

클라이언트의 루트인증서저장소(cacerts)에 서버의 인증서를 발급한 인증기관의 루트인증서를 등록해야 합니다. 해당 루트인증서를 다운받거나 전달받은 후 아래의 명령어로 등록할 수 있습니다.

keytool -importcert -alias 등록할 별칭 -keystore JAVA_HOME/PATH/cacerts -file 루트인증서

예) keytool -importcert -alias Digicertroot -keystore cacerts -file DigiCert-Root-sha1.pem.cer

cacerts에 설정된 비밀번호 : changeit

그리고 아래와 같이 등록된 내용을 확인할 수 있습니다.

keytool -list -keystore JAVA_HOME/PATH/cacerts

참고 예제