개인 자료 정리 홈페이지 입니다.

Note > 우분투에서 Springboot ssl 설정하기--By a3040, Published on Invalid Date
  1. certbot 설치하기
$ sudo apt-get update
$ sudo apt-get install certbot
  1. 인증서 발급받기
$ sudo certbot certonly --webroot -w /var/www/html -d example.com



설치 과정에서 /var/www/html 위치에 파일을 만들고 확인을 진행하는데 

이를 실패할 경우 따로 파일을 만들어 주거나 하고 다시 진행을 수행합니다.


/var/www/html/.well-known/acme-challenge/2m4aHw_W5QHOytip2DwvqnQhMSQuvZs3CCIwRIUJsPU  

이런 파일을 만들어 달라고 하거나 권한이 될경우 스스로 만듭니다.


인증서 발급에 성공하면


/etc/letsencrypt/live/도메인 위치에


lrwxrwxrwx 1 root root  38 Mar 27 15:57 cert.pem -> ../../archive/a3040.com-0001/cert1.pem

lrwxrwxrwx 1 root root  39 Mar 27 15:57 chain.pem -> ../../archive/a3040.com-0001/chain1.pem

lrwxrwxrwx 1 root root  43 Mar 27 15:57 fullchain.pem -> ../../archive/a3040.com-0001/fullchain1.pem 

lrwxrwxrwx 1 root root  41 Mar 27 15:57 privkey.pem -> ../../archive/a3040.com-0001/privkey1.pem

-rw-r--r-- 1 root root 692 Mar 27 15:57 README


  1. spring boot의 내장 서버를 tomcat embed일때 p12파일 만들기
]$ cd /etc/letsencrypt/live/도메인 위치 
]$ openssl pkcs12 -export -in cert.pem -inkey privkey.pem -out keystore.p12 -name tomcat


openssl이 있을 경우 실행되면서

암호를 두번 물어본후 alias를 tomcat으로 keystore.p12라는 파일이 생성됩니다. 톰켓에서 인증서 설치에 사용됩니다.


  1. Spring Boot 애플리케이션 설정 변경하기 application.properties 에 추가


server.ssl.key-store-type=PKCS12
server.ssl.key-store=file:/var/html/keystore.p12
server.ssl.key-store-password=changeit  #p12만들때 입력한 암호
server.ssl.key-alias


만들어진 p12파일을 boot.jar파일 이 있는 곳으로 복사하거나 p12파일이 있는 절대 위치를 기억합니다.


ex) /etc/letsencrypt/live/도메인 위치/keystore.p12 openssl로 만든 그자리 그대로 인경우.

ex) cp /etc/letsencrypt/live/도메인 위치/keystore.p12 /var/html/keystore.p12

만약 /var/html/ 에 boot.jar가 있는 경우.


  1. boot.jar 재시작