ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • OpenSSL 인증을 이용하여 Tomcat SSL 설정하기
    기타 2012. 1. 4. 17:49

    1. JDK keytool 프로그램을 이용해서 keystore를 생성

    keytool -genkey -alias tomcat -keyalg RSA


    2. keytool을 이용해서 인증서 요청파일(CSR)을 생성

    keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr

    certreq.csr 파일이 생성되었는지 확인


    3. OpenSSL에서 certreq.csr파일을 이용해서 인증서 생성

    1) OpenSSL에 필요한 디렉토리와 파일들 생성

    mkdir CA

    cd CA

    mkdir certs

     mkdir crl

     mkdir newcerts

     mkdir private

     touch index.txt

     echo "0001" > serial

     echo "0001" > crlnumber

     

    2) CA 인증서 생성

    . CA 개인키 생성

    openssl genrsa -aes256 -out ca.key 1024

    . Self-Signed CA 인증서 생성

    openssl req -new -x509 -days 365 -key ca.key -out ca.crt

    3) keytool에서 생성한 certreq.csr 을 이용해서 인증서 발급

    openssl x509 -req -CA ca.crt -CAkey ca.key -days 365 -in ../certreq.csr -out certreq.crt –Cacreateserial


    4. keytool을 이용해서 생성된 인증서를 tomcat에 import하기

    keytool -import -alias root -trustcacerts -file ca.crt

    keytool -import -alias tomcat -file certreq.crt



    5. tomcat 환경설정하기

    Tomcat이 설치된 디렉토리에서 conf/server.xml을 편집

    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"

                maxThreads="150" scheme="https" secure="true"

                 keystoreFile="${user.home}/.keystore" keystorePass="패스워드입력"

                clientAuth="false" sslProtocol="TLS" />


    6. https 기본 포트인 443을 이용하도록 tomcat 설정하기

    Conf/server.xml파일 편집

    아래설정내용에서 붉은색 부분을 443으로 변경

    <Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"

                maxThreads="150" scheme="https" secure="true"

                 keystoreFile="${user.home}/.keystore" keystorePass="******"

                clientAuth="false" sslProtocol="TLS" />

    <Connector port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="443" />

     

    댓글

Designed by Tistory.