본문 바로가기
오라클/WebServer

[OHS] ohs 12.2.1.3 Keytool 및 orapki를 이용한 테스트 인증서 생성

by sangyeon 2021. 12. 22.
728x90

보통 Oracle HTTP Server를 설치하고 default 인증서를 사용할 경우,

인증서 유효기간이 설치 시점부터 4년이다.

4년이 지나고 나서는 만료되기 때문에 OHS를 재기동할 때, 인증서 오류로 기동이 안되는 경우가 있다.

(NZ_LIBRARY..관련 오류 메세지)

 

그래서 이번 글에서는 OHS 엔진에서 테스트 인증서를 자체로 제작하는 방법을 해보고자 한다.

이 방법은 단순히 테스트 인증서이기 때문에 보안에는 취약하다.

외부 서비스의 경우에는 당연히 테스트 인증서를 가이드 하지 않고 인증기관에서 발급받은 공인 인증서를 사용하는 것을 권장한다.

 

이제 실제로 자체 서명된 테스트 인증서를 만들어보자.

 

1) Set environment variables


[ohs@sydev ohs12213]$ export ORACLE_HOME=/home/ohs/ohs12213
[ohs@sydev ohs12213]$ export PATH=${ORACLE_HOME}/oracle_common/bin:$PATH
[ohs@sydev ohs12213]$ export JAVA_HOME=/usr/java/java8_64

 

2) Set up a working directory


[ohs@sydev ohs12213]$ mkdir walletkey
[ohs@sydev ohs12213]$ cd walletkey/

 

3) Run the commands after deciding if you will create a keystore or wallet first. (This may be decided on which one you have configured and working first)

[ohs@sydev walletkey]$ $ORACLE_HOME/oracle_common/bin/orapki wallet create -wallet ./wallet -compat_v12 -auto_login_only

...
Oracle PKI Tool : Version 12.2.1.3.0
Copyright (c) 2004, 2017, Oracle and/or its affiliates. All rights reserved.

Operation is successfully completed.
[ohs@sydev walletkey]$ $ORACLE_HOME/oracle_common/bin/orapki wallet add -wallet ./wallet -dn 'CN=mypage.test.org, OU=OFM, O=Uclxxx, L=Seoul, ST=Seoul, C=KR' -keysize 2048 -sign_alg sha256 -asym_alg RSA -self_signed -validity 365 -auto_login_only

...
Oracle PKI Tool : Version 12.2.1.3.0
Copyright (c) 2004, 2017, Oracle and/or its affiliates. All rights reserved.

Operation is successfully completed.

- CN : 가입자의 이름을 나타내는 속성 (ex: 도메인 명)

- OU : 가입자가 속한 하위 조직명

- O : 가입자가 속한 조직명

- L : 가입자가 속한 지역명

- ST : 속한 도시나 도명

- C : 가입자가 속한 국가

 

[ohs@sydev walletkey]$ $ORACLE_HOME/oracle_common/bin/orapki wallet pkcs12_to_jks -wallet ./wallet -jksKeyStoreLoc ./keystore.jks -jksKeyStorepwd welcome1

...
Oracle PKI Tool : Version 12.2.1.3.0
Copyright (c) 2004, 2017, Oracle and/or its affiliates. All rights reserved.

Operation is successfully completed.

 

4) Check that you have a valid cwallet.sso and keystore.jks file


$ keytool -list -v -keystore keystore.jks -storepass <PASSWORD> > keystore.txt
$ orapki wallet display -wallet ./wallet

 

5) Configure the wallet in the OHS ssl.conf and mod_wl_ohs.conf, plus any other .conf you use, e.g. forms.conf. To make it simple and consistent, you may use a generic central location such as in the below examples ensuring the location is owned by the same Oracle user


ssl.conf example:
SSLWallet "<PATH TO>/wallets"

mod_wl_ohs.conf example:
WlSSLWallet "<PATH TO>/wallets"

 

6) Update the Node Manager to use the same keystore or disable SSL in the nodmanager.properties until you obtain a real certificate


SecureListener=false

 

7) WebServer 재기동 이후 인증서 교체 확인

 

새로 발급한 인증서 확인 유효기간 1년

- 유효기간의 경우 생성할 때 -self_signed -validity 365 옵션을 통해 더 늘릴 수 있다. 

자주 교체하기에는 귀찮으니 5년 정도 주는 것도 방법이다.

 

 

728x90