톰캣에서 SSL을 적용하려면 아래와 같은 소스를 입력 해야 합니다.
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="test.jks" keystorePass="test1234" />
물론 그 전에 해당 SSL 업체에서 받은 key 파일을을 톰캣에서 사용할 수 있게끔 변환 해야 합니다.
keytool -importkeystore -srckeystore cert.pfx -srcstoretype pkcs12 -destkeystore cert.jks -deststoretype jks
위의 예제는 PKCS(.pfx) 에서 keystore 파일로 변환 하는 명령어입니다. keytool은 자바에서 bin 폴더에 있는 파일입니다.
다른 crt파일을 변환 하는 방법도 있긴 한데 왠만하면 업체에서 pfx를 지원해주리라 보기 때문에 이게 편합니다. 다른건 좀 복잡하더군요.
어쨌든 적용을 해보니 톰캣 부팅시에 "Cannot recover key" 오류가 발생했습니다. 원인을 찾아보니 keystore password 하고 key password와 서로 달라서 그런 증상이 있다고 합니다. key password는 업체에서 제공 해준건데 keystore password로 동일하게 적용하려 하니 6자리 이하라서 설정도 안되었습니다. 그렇다고 해서 다시 패스워드를 변경하려고 재발급 받기도 어려운 상태였습니다.
그래서 방법을 찾던 중에 key password를 변경하는 법이 있더군요.
keytool -storepasswd -new %newpassword% -keystore %YourKeyStore%.jks - keystore password 변경
keytool -keypasswd -alias %MyKeyAlias% -new %newpassword% -keystore KeyStore.jks - key password 변경
%MyKeyAlias% 는 별칭인데 저의 경우는 발급 밥으려는 도메인 주소가 별칭으로 되어 있더군요.
이걸 하고니 이상 없이 SSL이 적용되었습니다. 설정법도 apache에 비해서 간단하더군요. key파일을 변환해야 한다는게 있긴 한데 하나의 파일로 되니 관리도 쉬울듯 합니다.
ChatGPT, 블록체인, 자바, 맥북, 인터넷, 컴퓨터 정보를 공유합니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!