개발을 진행하다 보면, 로컬호스트에도 https를 적용해야할 상황이 온다.
"https://localhost"를 적용하는 방법에 대해 알아보자.
1. 키스토어 생성
먼저 SSL 적용에 필요한 인증서를 생성한다.
키스토어(인증서)는 인텔리제이 콘솔이나 CMD에서 직접 생성이 가능하다.
아래 명령어를 사용해 keystore 파일을 생성한다.
keytool -genkeypair -alias tomcat -keyalg RSA -keysize 2048 -storetype PKCS12 -keystore keystore.p12 -validity 3650
다음과 같이 인증서의 세부 정보를 입력을 완료하면 인증서가 생성된다.

인증서가 생성된 것 확인

2. 생성된 키스토어 확인
키스토어가 정상적으로 생성되었는지 아래의 명령어로 확인한다.
keytool -list -v -keystore keystore.p12 -storetype PKCS12
비정상적으로 생성된 경우

정상적으로 생성된 경우

* 서버를 올리는 과정에서 계속 에러가 발생해 확인해보니 키스토어가 정상적으로 생성되지 않아서 그런 것이었다..!
위 명령어를 통해 꼭 키스토어가 정상적으로 생성되었는지 확인하자.
3. 톰캣 설정 추가
톰캣의 server.xml에 설정 정보를 추가해준다.
다음 정보를 추가할 때, 대소문자에 주의해야 한다.
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true" keystoreType="PKCS12"
clientAuth="false" keystorePass="heeyeon" keystoreFile="키스토어경로/keystore.p12" />
최종 server.xml

4. 서버 올려 확인
다음과 같이 localhost에 https가 적용된 것을 확인할 수 있다.

'개발' 카테고리의 다른 글
| 인텔리제이로 jar 생성하기 (0) | 2025.01.09 |
|---|---|
| 이벤트 기반 프로그래밍과 PRG 패턴 (1) | 2024.12.04 |
| Sticky Session & Session Clustering (3) | 2024.11.04 |
| json 데이터 암호화 문제 해결, @RequestParam과 @RequestBody (1) | 2024.10.09 |
| 브라우저의 캐싱 : css, js 등 해결하기 (1) | 2024.04.03 |