Linux

[Linux] Tomcat SSL 적용하기

로아다 2023. 9. 22. 13:37
728x90
반응형
SSL 인증서 발급 하기

 

openssl 설치 -> https://talkme.tistory.com/entry/CentOS%EC%97%90-openssl-%EC%84%A4%EC%B9%98-openssl-102ftargz

 

1. openssl을 이용하여 개인키 / 공개키 발급

genrsa -des3 -out [키이름] 2048 
genrsa -des3 -out private.pem 2048

- 명령어를 실행하여 개인키를 발급 (비밀번호가 존재하는 개인키)

genrsa -out [키이름] 2048
genrsa -out private.key 2048

- 개인키 발급 (비밀번호가 존재하지 않는 개인키)

 

2. 개인키를 이용하여 공개키 발급

rsa -in [개인키] -pubout -out [공개키] 
rsa -in priavte.key -pubout -out public.key

 

3. CSR(인증요청서) 만들기

- CSR이란, SSL 인증의 정보를 암호화하여 인증기관에 보내 인증서를 발급받게하는 신청서이다. 

req -new -key [키] -out [CSR이름.csr]
req -new -key private.key -out private.csr

- 명령어 실행이 되면서, 추가 사항을 입력하면 됨

 

4. CRT(인증서) 만들기

 

4 - 1. rootCA.key 생성

genrsa [암호화 알고리즘] -out [키이름] 2048
genrsa -aes256 -out rootCA.key 2048

 

4 - 2. rootCA 사설 CSR 생성하기

req -x509 -new -nodes -key rootCA.key -days 3650 -out rootCA.pem

- (임시로 아무 국가,도시, 회사, 도메인,메일 등을 입력)

 

4 - 3. CRT(인증서) 생성

x509 -req -in private.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out private.crt -days 3650

 

Tomcat 서버에 HTTPS / SSL 을 적용

- TOMCAT에 인증서를 적용할것이기 때문에 pkcs12라는 형식으로 바꿔줘야함.

pkcs12 -export -in private.crt -inkey private.key -out keystore.jks -name tomcat

 

1. Tomcat 서버의 server.xml을 열기 (톰캣 위치 /conf 경로에 존재)

 

2. server.xml에 소스코드 추가

<Connector port="8443" maxHttpHeaderSize="8192"
    maxThreads="150" enableLookups="false" acceptCount="100"
    connectionTimeout="20000" disableUploadTimeout="true"
    protocol="org.apache.coyote.http11.Http11NioProtocol"
    SSLEnabled="true" scheme="https" secure="true"
    clientAuth="false" sslProtocol="TLS"
    keystoreFile="/temp/tomcat/cert/keystore.jks" keystoreType="PKCS12"
    keystorePass="1234"/>

-- keystoreFile : 해당 keystore.jks 파일의 경로

-- keystorePass : keystore.jks 비밀번호

 

728x90
반응형