Oracle WebLogic SSL 인증서 설치/적용 가이드

사전 구성 환경

  • Java JDK or JRE http://www.java.com/ (Java 7 버전 이상, TLS 1.2 지원 필수)
  • TLS 1.2 / SHA-2(sha256RSA) 암호화 지원 모듈 구성/활성 확인 필수
  • MD5, RC4 등 국제 보안 기구에서 해제를 권장하는 취약한 암호화 모듈 비활성화
  • SSL 2.0, 3.0 및 TLS 1.0 1.1 프로토콜 접속 허용 해제. 최신 TLS 1.2 1.3 설정 권장

진행 과정

  1. 키스토어 생성
  2. CSR(Certificate Signing Request) 생성
  3. 인증서 발급 신청 제출
  4. 인증서 조합
  5. 서버 설정값 적용
  6. 서버 정상 적용 완료 테스트
  7. 웹페이지에 https:// 링크 적용

Keystore 및 CSR 생성

- SSL 인증서 발급 신청서 작성시, CSR 입력 단계에서 "CSR 자동생성" 선택시 현재 과정은 필요 없습니다.
- CSR 자동생성 발급 완료시, "개인키, 서버인증서, 체인인증서, 루트인증서" 의 pem, pfx, jks 파일이 포함되어 있습니다.
- FAQ : 개인키(private key) 생성/보관 관련 참고 사항
- FAQ : SSL 발급 신청시 CSR 생성 관련 참고 사항

- CSR 직접 생성이 필요한 경우, Tomcat 매뉴얼의 Keystore/CSR 부분을 참고하세요


Single

CN : sub.example.com 처럼 FQDN 도메인 형식 이어야 합니다.

Wildcard

CN : *.example.com 과 같은 패턴 이어야 합니다.

MultiDomain

CN : example.com 대표성을 가진 FQDN 도메인 1개만 입력 합니다.
SAN : 인증서에 포함될 나머지 FQDN 도메인은, 신청서 작성중 DCV 설정 단계에서 추가 입력합니다.

Multi-Wildcard

CN : example.com 대표 루트 도메인 1개을 CN으로 입력 합니다.
SAN : *.example.com 형식의 와일드카드 도메인은, 신청서 작성중 DCV 설정 단계에서 추가 입력합니다.

인증서 발급 완료

- 발급 완료 후에는, 메일첨부 또는 주문상세의 압축파일(zip)에 인증서 파일이 포함되어 있습니다.
- 서버 적용에 필요한 파일들에 대해서, 발급 내역서 PDF 및 루트/체인 설명 PDF를 통해서 미리 숙지해야 합니다.
- 이후 과정 부터는, 서버에 SSL 인증서 설치/적용/확인 절차 입니다. (인터넷에 공개된 설정법과 차이 없음) - 직접 설치/적용에 어려움이 있다면, 서버운영 전문업체 기술지원도 검토해 보시기 바랍니다 유료기술지원 확인하기

인증서 조합 (CSR 직접 생성시)

- SSL 인증서 발급 신청서 작성시, CSR 입력 단계에서 "CSR 자동생성" 선택시 현재 과정은 필요 없습니다.
  • keytool -import -trustcacerts -alias AAARoot -file AAACertificateServicesRoot.crt.pem -keystore sslcert.co.kr.jks
  • keytool -import -trustcacerts -alias USERTrustCA -file USERTrustRSACertificationAuthority.crt.pem -keystore sslcert.co.kr.jks
  • keytool -import -trustcacerts -alias SectigoCA -file SectigoRSADomainValidation.crt.pem -keystore sslcert.co.kr.jks
  • keytool -import -trustcacerts -alias SecureSign -file sslcert.co.kr_xxxxx.crt.pem -keystore sslcert.co.kr.jks
  • (예제에 사용된 옵션 값 등은 예제용이므로, 실제 해당 도메인 정보로 지정하시기 바랍니다)

* 개인키가 CSR 생성 서버에만 - CSR 직접 생성 - 존재하는 경우에, 개인키에 발급된 서버/체인/루트 통합합니다.
* 루트/체인 인증서는 상품별로 차이가 있으므로, 발급 완료시 첨부된 파일 내역에서 확인 가능합니다.
* CSR 자동생성 신청의 경우, .pfx / .jks 포맷 파일을 제공해 드리며 파일에 모두 통합되어 있습니다. (조합 과정 불필요)
* 필요에 따라서 .pem 파일을 이용하여 조합하거나 .pfx, .jks 파일에서 추가/변경/분리/조합하면 됩니다. (변환매뉴얼참조)

인증서 설치 : WebLogic 8+ 버젼

WebLogic Server Admin Console -> Environment -> Servers -> 해당서버 -> Lock & Edit -> Settings -> Configruation

- SSL Listen Port : Enabled (체크박스 활성화)
- SSL Listen Port : 8080 (사용코자 하는 포트 설정)

- Keystores : Custom Identity / Custiom Turst 지정

- Identity :
Custom Identity Keystore: c:\sslcert.co.kr.jks(전체 경로)
Custom Identity Keystore Type: jks (포맷)
Custom Identity Keystore Passphrase: (jks 암호)
Confirm Customer Identity Keystore Passphrase: (jks 암호)

- Trust :
Custom Trust Keystore : c:\sslcert.co.kr.jks (전체 경로)
Custom Trust Keystore Type: jks (포맷)
Custom Trust Keystore Passphrase: (jks 암호)
Confirm Customer Trust Keystore Passphrase: (jks 암호)

- Identity / Trust Locations : Keystores 지정
- Private Key Alias : Alias 지정 (keytool -list -keystore jks파일 -v 확인 가능. CSR 자동생성 첨부된 jks 는 CN 명)
- Private Key Passphrase: (jks 암호)
- Confirm Private Key Passphrase: (jks 암호)

저장(Activate Changes)후, [Control] 탭에서 Restart SSL 하여 변경 사항 적용합니다.

또는 아래와 같이 config.xml 적용도 가능합니다. (예제에 표기되지 않은 Property 는 필요에 따라 설정)

config.xml : DOMAIN_NAME/config/
<Server 
      CustomIdentityKeyStoreFileName="c:\sslcert.co.kr.jks"
      CustomTrustKeyStoreFileName="c:\sslcert.co.kr.jks"
      CustomIdentityKeyStorePassPhrase="*****"
      CustomIdentityKeyStoreType="jks"
      CustomIdentityPrivateKeyPassPhrase="*****"
      KeyStores="CustomIdentityAndCustomTrust" 
      ListenPort="7001">
    <SSL 
         Enabled="true" 
         IdentityAndTrustLocations="KeyStores"
         ServerPrivateKeyAlias="Private Key Alias 입력" 
         ServerPrivateKeyPassPhraseEncrypted="*****" 
    />
</Server>

인증서 설치 : WebLogic 6/7 버젼

weblogic.properties
weblogic.system.SSLListenPort=443
weblogic.security.ssl.enable=true
weblogic.security.key.server=sslcert.co.kr_xxxxx.key.pem (개인키)
weblogic.security.certificate.server=sslcert.co.kr_xxxxx.crt.pem (서버인증서)
weblogic.security.certificate.authority=chain-bundle.pem (체인인증서)
weblogic.security.clientRootCA=AAACertificateServicesRoot.crt.pem (루트인증서)

또는 아래와 같이 config.xml 적용도 가능합니다. (예제에 표기되지 않은 Property 는 필요에 따라 설정)

config.xml
<SSL 
        Enabled="true" 
        ListenPort="7002"         
        ServerKeyFileName="c:\sslcert.co.kr_xxxxx.key.pem" (개인키)
        ServerCertificateFileName="c:\sslcert.co.kr_xxxxx.crt.pem" (서버인증서)
        ServerCertificateChainFileName="c:\chain-bundle.pem" (체인인증서)
        TrustedCAFileName="c:\AAACertificateServicesRoot.crt.pem"  (루트인증서)
/> 
 

저장후, WebLogic 재시작합니다.

설치 적용 확인

- SSL 설정 적용 후, WebLogic 서버를 재시작하여 정상 구동이 되는지 확인이 필요합니다.

- 서버 데몬 시작시 SSL 설정 관련 오류,경고가 있는지 콘솔/데몬/이벤트 로그 확인이 필요합니다.
- 서버 로컬에서 설정한 HTTPS 포트가 활성화 되어 있는지 netstat 등으로 확인해야 합니다.
- 외부에서 HTTPS 포트 접속이 되지 않는 다면 보안설정(방화벽등) 허용을 확인해야 합니다.
- L4 분산 환경은, HTTPS 패킷을 수신하는 모든 노드 웹서버에 SSL 적용이 필요합니다.
- L7 라우팅 환경은, L7 에도 HTTPS 활성 및 SSL 인증서 설정이 필요합니다. (장비별 자체 매뉴얼 참조)

- SSL 발급 도메인 웹페이지에 https:// 링크 적용을 별도 진행해야 최종적으로 SSL 암호화가 적용됩니다. (개발자,웹디자이너)
- PC 및 스마트폰의 "Chrome / Firefox / IE / Edge" 각 웹브라우져에서 "루트,체인,SSL,TLS" 경고가 발생 하는지 확인해야 합니다.

SSL 설치/적용 트러블슈팅 SSL 설치 적용 확인 하기 체인인증서 적용 여부 확인 인증서 포맷 변환 방법
컨텐츠의 무단 전제복사 및 이메일 주소의 수집/이용을 허용하지 않습니다.
bitSyrup 2021. All rights reserved.