본문 바로가기

Spring

Spring boot) keytool로 ssl 생성하여 ssl 적용하기

728x90
keytool이란?
JDK에서 제공하는 tool이다. 기한을 정해놓고 공개키, 비밀키가 들어있는 인증서를 만들 수 있다.

 

 

SSL 동작방식을 간단하게 설명해보면

 

1. 클라이언트가 sever에 요청

2. server가 갖고있는 인증서 정보를 제공(공개키, 비밀키)

3. 클라이언트는 인증서 정보를 갖고서 CA에서 복호화 가능한지 확인

 

-> CA가 복호화 할 수 없는데 인증서가 있다면, 신뢰할 수 없음으로 뜸

 


1. 터미널로 인증서 생성하기 (Mac)

 

keytool -genkey -alias spring -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 4000

 

생성시에 정보들을 넣는데

마지막에 yes만 해주면 생성됨

계속 안되는 경우가 있어서

계속 yes하니까 됨..

 

 

2. resources 디렉토리에 인증서파일 넣어주기

 

 

3. application.properties에 인증서 위치와 정보를 넣어주기

## SSL 셋팅
server.ssl.key-store:classpath:keystore.p12
server.ssl.key-store-type=PKCS12
server.ssl.key-store-password=비밀번호

 

 

4. 접속해서 확인해보기

 

 

 

 

 

 

좋은 블로그

https://nuritech.tistory.com/25