만들어가는 세상

[SPRINGBOOT] SSL 적용#1 본문

IT/SPRING

[SPRINGBOOT] SSL 적용#1

윤재웅 2020. 4. 22. 12:52

SPRING BOOT에서 인증서 적용을 하기위해서는 JKS 또는 PKCS12 인증서가 필요합니다. 보통 인증센터에서 pem 파일만 받았을 경우, 변환 작업 또는 요청을 하면됩니다. 변환 시 참고해주세요.

key.pem : 개인키
chain.pem : 내 기본 공개키 + 기타 정보를 포함한 공개 키 (Node Express 서버에서는 option의 cert에 이 파일 사용)
cert.pem : 기본 공개키

1단계 PKCS12로 변환하기
이렇게 3개의 pem 인증서가 있을 경우 openssl 커맨드를 활용하여 "개인정보보교환" 유형의 PKCS12 키를 생성합니다.

openssl pkcs12 -export -in cert.pem -inkey key.pem -out cert_and_key.p12 -name ttp -CAfile chain.pem -caname root

[속성]
export : PKCS#12 파일 생성
in : 개인키 파일 이름 (p12에 들어갈 인증서)
inkey : 포함시킬 개인키
out : 생성될 p12 파일명
name : Java에서 KeyStore로 접근시 alias항목이 되는 부분 (필수 입력)

Enter pass phrase for key.pem: 발급받은 비밀번호
Enter Export Password: 키에 사용할 비밀번호 (boot에서 사용)
Verifying - Enter Export Password: 재입력

키가 생성되었다면 1차 작업 완료하였습니다. 이제 BOOT에 설정 적용 합니다. (포스팅 아직못함)

우선 적용하기전 443 포트가 열리 있는지 확인 합니다. LINUX기준에서 방화벽 설정 때문에 매번 포트 번호를 하나씩 열어서 사용해야하는 경우, 간단하게 포트를 열 수 있습니다.

열려 있는 모든 포트 보기
netstat -nap
사용하려는 포트 번호가 있는지 확인
netstat -nap | grep `포트번호`
포트 열기
iptables -I INPUT 1 -p tcp --dport `포트번호` -j ACCEPT
특정 포트에서 사용하는 프로그램 확인
lsof -i TCP:포트
특정 포트에서 사용하는 프로그램 죽이기
fuser -k -n tcp 포트
Comments