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

사전 구성 환경

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

진행 과정

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

KeyStore 및 CSR 생성

⦁ SSL 인증서 발급 신청시, CSR 입력 단계에서 "CSR 자동생성" 선택시 수작업 생성 과정은 필요가 없습니다. (자동 이용 권장)
 ⦁ CSR 자동 발급 완료시, "개인키 / 서버인증서 / 체인인증서 / 루트인증서" 의 pem(crt,key), pfx, jks, p7b 파일이 첨부 제공됩니다.


- FAQ : 개인키(private key) 생성/보관 관련 참고 사항
- FAQ : SSL 발급 신청시 CSR 생성 관련 참고 사항
- FAQ : SSL 발급 신청시 도메인 형식 예제 및 참고 사항

※ 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)에 인증서 파일이 포함되어 있습니다.
- 서버 적용에 필요한 파일 정보는, zip 파일내 '발급내역서 및 루트/체인' PDF 에서 확인해야 합니다. (필수)
- 이후 과정 부터는, 서버에 SSL 인증서 설치/적용/확인 절차 입니다. (인터넷에 공개된 설정법과 차이 없음)
- 직접 설치/적용에 어려움이 있다면, 서버운영 전문업체 기술지원도 검토해 보시기 바랍니다 유료기술지원 확인하기

KeyStore 에 인증서 추가 (CSR 직접 생성한 경우)

⦁ SSL 발급 신청시, "CSR 자동생성" 발급 완료는 .jks / .pfx 파일이 제공되므로, 추가 과정은 불필요합니다. (zip파일)

SSL 발급 신청시 CSR 을 직접 생성한 경우, 고객사측 시스템에만 개인키/KeyStore 가 존재합니다. 인증서 변환 가이드 를 참조하여, 인증서 스토어에 "서버+체인+루트" 인증서를 추가로 통합해야 합니다. 루트/체인 인증서는 상품별로 차이가 있으므로, 발급 완료시 zip 첨부된 파일 내역에서 확인 가능합니다.

인증서 설치 : WebLogic 8+ 버젼

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

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

- Keystores : "Custom Identity & Custiom Turst" 지정 (사용자 정의 ID 및 사용자 정의 보안)

- Identity :
Custom Identity Keystore: /path/sslcert.co.kr.jks (jks 파일 전체 경로)
Custom Identity Keystore Type: JKS (파일형식)
Custom Identity Keystore Passphrase: ***** (jks 패스워드)
Confirm Customer Identity Keystore Passphrase: ***** (jks 패스워드)

- Trust :
Custom Trust Keystore : /path/sslcert.co.kr.jks (jks 파일 전체 경로)
Custom Trust Keystore Type: JKS (파일형식)
Custom Trust Keystore Passphrase: ***** (jks 패스워드)
Confirm Customer Trust Keystore Passphrase: ***** (jks 패스워드)

- Identity & Trust Locations : "Keystores (키 저장소)" 지정 (Private key Location - Custom Identity & Custiom Turst)
- Private Key Alias : Alias 지정 (keytool -list -keystore jks파일 -v 확인 가능. CSR자동생성 첨부된 jks 는 CN 명이 Alias)
- Private Key Passphrase: ***** (CSR자동생성 첨부된 jks 의 개인키 패스워드는 없음)
- Confirm Private Key Passphrase: *****

- 메뉴 경로 및 표시 문구는 WebLogic 버전에 따라 조금씩 상이 할수 있습니다.
- CSR자동생성 첨부된 jks 파일에는, "개인키+서버인증서+체인인증서+루트인증서" 가 모두 포함되어 있습니다.

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

config.xml : DOMAIN_NAME/config/
<Server
                    CustomIdentityKeyStoreFileName="/path/sslcert.co.kr.jks"
                    CustomIdentityKeyStorePassPhrase="*****" (jks 패워드) 
                    CustomIdentityKeyStoreType="JKS"
                    CustomTrustKeyStoreFileName="/path/sslcert.co.kr.jks"
                    CustomTrustKeyStorePassPhrase="*****" (jks 패워드)
                    CustomTrustKeyStoreType="JKS"
                    KeyStores="CustomIdentityAndCustomTrust" 
                    ListenPort="7001" >
                    <SSL 
                    Enabled="true"
                    IdentityAndTrustLocations="KeyStores"
                    ServerPrivateKeyAlias="Alias 입력" 
                    ServerPrivateKeyPassPhrase="*****" (개인키 패스워드) />
</Server>

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

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

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

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

config.xml
<SSL 
        Enabled="true" 
        ListenPort="7002"         
        ServerKeyFileName="c:\www.sslcert.co.kr.key.pem" (개인키)
        ServerCertificateFileName="c:\www.sslcert.co.kr.crt.pem" (서버인증서)
        ServerCertificateChainFileName="c:\chain-bundle.pem" (체인인증서)
        TrustedCAFileName="c:\AAACertificateServices.Root.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 2023. All rights reserved.