필요한 Tools
SpringBoot : Initializer https://start.spring.io/
WSL2 + Ubuntu
IntelliJ
프로젝트 생성
1. SpringBoot Initializer를 통해 프로젝트 하나 생성한다
* 필자의 경우 아래와 같이 생성했다. 필요시 Dependencies를 추가, Java 버전 변경, 프로젝트 이름 변경 등 하면된다.
2. Generate로 압축파일 다운로드 후, 원하는 경로에 압축해제
* 필자는 바탕화면에 Spring폴더(디렉토리)를 따로 만들어 관리한다.
3. IntelliJ를 실행하여, 해당 폴더를 연다
인증서 발급
: Ubuntu, WSL2, powershell 등 사용
* 여기선 Ubuntu를 IntelliJ내 터미널 탭으로 열어서 사용할 것이다.
* 만약 Ubuntu가 설치되어있지 않다면, 우분투 설치 후 진행.
* Ubuntu 설치 후 실행되지 않는다면 Bios설정을 해줘야한다.링크참고1 링크 참고2
1. 앞에서 연 IntelliJ 하단 터미널 탭에서 +옆에 있는 꺽쇠를 눌러 Ubuntu를 연다
2. 인증서 발급 설치전에 업데이트 한번 해주자
$ sudo apt update
3. 아래의 코드들을 실행해준다 (IntelliJ 내 터미널의 경우, ctrl+c ctrl+v 로 가능하다)
$ sudo apt install libnss3-tools
$ wget -O mkcert https://github.com/FiloSottile/mkcert/releases/download/v1.4.3/mkcert-v1.4.3-linux-amd64
$ chmod +x mkcert
$ sudo cp mkcert /usr/local/bin/
4. 인증된 발급기관으로 추가 (CA 생성 및 설치)
$ mkcert -install
5. 이제 PKCS12형식 인증서를 생성하자
* 이제 추가 인증성 생성 시, 아래의 코드만 실행하면 된다.(위의 과정은 처음 한 번만 함)
$ mkcert -pkcs12 localhost
HTTPS 서버 작성
1. IntelliJ에서 잘 수행했다면, 아래와 같이 프로젝트 소스루트에 localhost.p12 라는 인증서 파일이 생길것이다
src/main/resources 경로로 드래그 해주자
2. application.properties에 설정해주자
server.ssl.key-store=classpath:localhost.p12 # -> 인증서 경로를 적습니다.
server.ssl.key-store-type=PKCS12 # -> 인증서 형식을 적습니다.
server.ssl.key-store-password=changeit # -> 인증서 비밀번호를 적습니다.
# 여기서 비밀번호인 changeit은 비밀번호를 설정하지 않았을 때의 기본값입니다.
# 인증서 비밀번호는 인증서를 생성할 때 설정하거나 생성 후 변경해줄 수 있습니다.
3. 프로젝트 (애플리케이션) 엔트리 포인트 클래스를 통해 실행시, 아래와 같이 뜨면 정상
* 만약 안되면, 프로젝트를 닫고 다시 열거나, 재부팅을 해보자
'Java & Spring > 옵션정리' 카테고리의 다른 글
[JWT] JJWT (0) | 2022.09.26 |
---|---|
[인증/보안] HTTP / HTTPS (0) | 2022.09.20 |
[오류코드] HTTP 상태 코드 (0) | 2022.09.20 |
[SpringMVC] Step 1. 설계 준비 사항 (0) | 2022.09.19 |
[플러그인] asciiDoc (0) | 2022.09.14 |