Ubuntu 22.04 에서 Tomcat 9 설치 및 SSL 설정

리눅스/APACHE|2024. 6. 18. 08:05
반응형

Ubuntu 22.04 환경에서 테스트 후 작성되었습니다.

- 참고 : https://tomcat.apache.org/tomcat-9.0-doc/ssl-howto.html

 

 

1. Tomcat 설치

 

관련 패키지를 설치하고 실행합니다.

# apt -y install default-jdk tomcat9 tomcat9-admin tomcat9-user

# systemctl enable --now tomcat9

 

 

2. SSL 설정

 

1) 인증서 형식으로 변환

(SSL 인증서 디렉토리로 이동 후)

# openssl pkcs12 -export -in www_sysdocu_kr.crt -inkey www_sysdocu_kr.key -out keystore.p12 -name sysdocu

입력한 순서대로 인증서파일, 키파일, 생성할 키파일 이름, 키이름 입니다.

(-CAfile chain.pem -caname root 와 같은 옵션도 추가 가능)

실행하면 암호를 입력하라고 나오는데, 이는 톰캣 설정파일에 쓰이는 암호로 인증서 패스워드와 동일하지 않아도 됩니다.

여기에서는 예시로 비밀번호를 12345678 로 입력하였습니다.

 

아래와 같이 파일이 생성되었습니다.

# ls -al keystore.p12 
-rw------- 1 root root 3392 Jun 18 07:35 keystore.p12 

 

Tomcat 데몬이 읽을 수 있도록 소유자와 퍼미션을 변경하고 톰캣 설정 디렉토리로 이동해 줍니다.

(이 부분은 적당히 조정 가능)

# chown root.tomcat keystore.p12

# chmod 640 keystore.p12

# mv keystore.p12 /var/lib/tomcat9/conf/

 

 

2) 설정

# vi /var/lib/tomcat9/conf/server.xml

...

    <Connector port="80" protocol="HTTP/1.1"
        connectionTimeout="20000"
        redirectPort="443" />

    <Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
            maxThreads="150"
            SSLEnabled="true">
            <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
            <SSLHostConfig>
                <Certificate certificateKeystoreFile="/var/lib/tomcat9/conf/keystore.p12"
                    certificateKeystorePassword="12345678" type="RSA" />
            </SSLHostConfig>
    </Connector>

...

 

설정 저장 후 데몬을 재시작 합니다.

# systemctl restart tomcat9

 

 

반응형

댓글()