[Tomcat] 톰켓에 SSL 적용하기

반응형
반응형

톰켓에 SSL 적용하기

 

목차

     

     

      SSL 이란?

     기본 브라우저는 http로 접속을 합니다. URL을 통해 정보를 주고받고, 우리가 원하는 페이지로 이동 및 기능을 제공합니다. 이 URL은 기술의 발달에 따라 여러 가지 기능도 추가됐지만, 동시에 해킹의 수단으로도 이용이 됩니다.

     

    이를 방지하고자 암호화통신을 요구하게 되었고, 그렇게 탄생한 것이 https입니다.

    SSL(Secure Socket Layer) 또는 TLS(Transport Layer Security) 보안 프로토콜을 통해 클라이언트와 서버가 보안된 통신을 하게 만들어줍니다.

     

     

      설치 환경 확인하기

     최근 톰캣은 openssl이 설치가 되어있습니다.

    그러나 모르겠다 하시는 분은 openssl version 명령어로 확인하시면 됩니다.

     

    openssl version 체크하기

    1.openSSL이 없을 경우에는 아래 링크를 통해 설치를 부탁드리겠습니다.

     

    2021.05.22 - [Computer/기타] - [CentOs] OPEN SSL 설치

     

     

    2. SSL 적용을 위해서 아래의 프로그램을 설치 부탁드리겠습니다.

    OpenSSL.zip
    3.97MB

     

      SSL Key 확인하기

    key의 사용은 개발서버를 위한 key와 실제 서비스 중인 상용키로 구분됩니다. 

    개발키는 개발환경 적용을 위한 Test용 키입니다.

    개발용 key 만들기

    기본적으로 https 적용 시 이 문구가 뜨면서 정상적인 웹 접속이 힘든 상태입니다.

     

     

     

    정상적인 상용 키는 현재 상용 중인 사이트 윗부분에서 쉽게 볼 수 있습니다. 보통 유료이며, 아무런 설정 없이 쉽게 사이트 접근이 가능합니다.

     

     

    만약 키를 만들게 된다면, 이렇게 제공하게 되는데, 우리가 살펴봐야 할 것은 확장명이 crt와 key입니다.

     

     

    인증서 중에서 특히 발급대상이 자신이 적용할 서버의 도메인을 가리키는 crt여야 합니다.

    key 생성에 대해서는 차후 따로 설명드리겠습니다.

     

     

      keystore 만들기

     위의 제가 드린 파일 중 OpenSSL/bin/openssl.exe 프로그램이 있습니다.

    이 프로그램을 열은 후에 아래와 같이 적용합니다.

     

    pkcs12 -export -in 사용할 인증서.crt -inkey 사용할 개인 키.key -out .keystore -name tomcat

     

    파란색 네모의 key와 crt를 이용해서 .keystore를 생성한다.
    keystore

    위의 crt와 key를 활용하여 keystore를 생성합니다.

    톰캣에 적용할 키이며,. keystore가 중요한 역할을 합니다.

    단, 리눅스 콘솔 창에서는. keystore가 보이지 않으므로, 폴더(디렉터리)를 생성하여 구분 지을 수 있도록 해야 합니다.

     

     

      톰켓에 key 적용하기

    tomcat의 server.xml에 주석처리된 Connector을 풀거나 만든다.

     자신이 서비스 중인 tomcat에 tomcat/conf/server.xml에 다음과 같이 추가 작업을 합니다.

    여기서 유심히 살펴볼 부분은 port와 certificateKeystoreFile입니다.

     

    port는 도메인 뒤에 https를 표현할 port를 의미하며, certificateKeystoreFile는 keystore의 위치를 나타냅니다.keystore를 생성 시 비밀번호가 존재한다면, 패스워드를 입력하시고 사용하시면 됩니다.

     

     

      마무리

     https적용 방식은 톰캣의 버전에 따라 달라진다고 합니다.

    이번 과정에서는 최근에 제가 https로 인해 많이 고생을 했고, 이 문제는 아직도 현재 진행형인 상태입니다.

    서비스가 제공되는 환경문제가 결정적인 원인이었습니다.

     

    모두 필승하시기를 바랍니다.

    반응형

    'Computer > 기타' 카테고리의 다른 글

    [Tomcat] 톰캣의 기본 설정  (1) 2021.06.26
    [JavaScript] 동적 태그 만들기  (0) 2021.05.27
    [JavaScript] userAgent 사용하기  (0) 2021.05.24
    [CentOs] OPEN SSL 설치  (0) 2021.05.22
    [톰캣] MultiPart 설정하기  (0) 2021.04.28

    댓글

    Designed by JB FACTORY