/
SSL 인증서 설정 및 적용

SSL 인증서 설정 및 적용

 

SSL 인증서 생성

HTTPS를 활성화하려면 유효한 인증서가 필요합니다. 자체 서명된 인증서를 작성하거나 신뢰할 수 있는 인증 기관에서 인증서를 얻을 수 있습니다. 모바일 앱을 사용하려는 경우 신뢰할 수 있는 인증 기관에서 발급 한 인증서가 필요합니다.

1. 자체 서명된 인증서 작성

자체 서명 인증서는 암호화가 필요하지만 요청 웹 사이트의 ID를 확인할 필요가 없는 경우에 유용합니다. 일반적으로 테스트 환경 및 회사 내부 네트워크 (인트라넷)에서 자체 서명 된 인증서를 사용할 수 있습니다. 인증서는 인증 기관 (CA)에 의해 서명되지 않았기 때문에 사용자는 사이트를 신뢰할 수 없다는 메시지를 받을 수 있습니다.

  • Java 유틸리티 keytool을 사용하여 자체 서명된 인증서를 생성

<Window>

"%JAVA_HOME%\bin\keytool" -genkeypair -keysize 2048 -alias tomcat -keyalg RSA -sigalg SHA256withRSA

<Linux>

$JAVA_HOME/bin/keytool -genkeypair -keysize 2048 -alias tomcat -keyalg RSA -sigalg SHA256withRSA
  • 인증서의 비밀번호(개인 키)를 작성

    • 영어와 숫자만 사용

    • 기본 비밀번호는 changeit

  • 인증서 세부 사항을 지정

    • 작성후 세부 사항 확인 후 'y' 입력

  • 설정한 인증서의 비밀번호 입력

    • 'tomcat'은 위의 keytool 명령에 입력한 별칭

    • 키 저장소 항목은 개인 키와 동일한 비밀번호 (Tomcat 요구 사항)

2. 인증 기관에서 발급한 인증서 사용

프로덕션 환경에는 인증 기관(CA)에서 발급 한 인증서가 필요합니다.

  1. 로컬 인증서를 생성하고 해당 인증서를 기반으로 '인증서 서명 요청'(CSR)을 생성

  2. 선택한 인증 기관에 CSR을 제출

  3. CA는 해당 CSR을 사용하여 인증서를 생성

  • Java keytool 유틸리티를 사용하여 로컬 인증서를 생성

    • 로컬 인증서에 생성된 .keystore 파일의 경로 및 파일 이름으로 <MY_KEYSTORE_FILNAME>를 대체

    • certreq.csr이라는 생성된 파일을 인증 기관에 제출

keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr -keystore <MY_KEYSTORE_FILENAME>
  • CA에서 받은 인증서를 로컬 키 저장소로 가져오기

    • 일부 CA에서는 인증서를 가져 오기 전에 중간 인증서를 설치해야합니다. 인증서를 성공적으로 설치하려면 CA 설명서를 따라야함

server.xml 파일 수정

  • <install-directory>/conf/server.xml을 편집

    • <MY_CERTIFICATE_PASSWORD>를 인증서에 지정한 비밀번호로 변경

    • <MY_CERTIFICATE_LOCATION>를 인증서 파일 경로 및 이름을 포함하여 인증서 경로로 변경 

URL을 HTTPS로 경로 재지정

URL을 해당하는 HTTPS로 리디렉션해야 합니다. web.xml에 보안 제약 조건을 추가하면됩니다. 이로 인해 Tomcat은 SSL이 아닌 포트로 들어오는 요청을 리디렉션합니다.

  • RSS Feed Macro를 사용하는지 확인 후 사이트에 RSS 매크로가 활성화되어 있으면 web.xml파일을 편집하지 않고 방화벽 규칙을 사용하여 URL 리디렉션을 구성해야 합니다.

  • 그 외엔 <CONFLUENCE_INSTALLATION>/confluence/WEB-INF/web.xml 을 편집