1. 程式人生 > >Weblogic 安裝和配置SSL(Linux)

Weblogic 安裝和配置SSL(Linux)

說明:
主要方法參見至  http://dead-knight.iteye.com/blog/1941716  
以下過程在ubuntu16下測試通過,使用的JDK是 java version "1.8.0_121" Java HotSpot(TM) 64-Bit Server VM
一、準備工作
1.1、JDK的安裝,自行安裝,不做討論,只列出環境變數配置片段
   #JAVA_EVN
export JAVA_HOME=/usr/jdk1.8.0_121
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar


1.2、weblogic安裝,不在該討論範疇,下面列出一個簡單的測試環境安裝過程(參見http://blog.csdn.net/chx_stone/article/details/52916113)
  (1)解壓下載檔案、賦權、移動至軟體安裝目錄
sudo unzip -d weblogic1213 wls1213_dev.zip  
sudo chmod 777 -R weblogic1213 
sudo mv weblogic1213 /usr/  


(2)配置weblogic環境變數
sudo vi /etc/profile
export MW_HOME=/usr/weblogic1213/ca
:wq!
source /ect/profile  
cd $MW_HOME  


(3)檢查當前環境是否符合weblogic安裝要求
. $MW_HOME/configure.sh  


(4)配置weblogic初始化要求
. $MW_HOME/wlserver/server/bin/setWLSEnv.sh  


(5)配置weblogic域(domain)
. $MW_HOME/wlserver/common/bin/config.sh 


 (6) 啟動服務
. $MW_HOME/user_projects/domains/base_domain/startWebLogic.sh 


 (7)存放日誌路徑
$MW_HOME/user_projects/domains/ssl_domain/servers/AdminServer/logs/ssl_domain.log
 
 cd $MW_HOME
 mkdir ca
 cd $MW_HOME/ca


二、根證書生成
2.1 生成根私匙
openssl genrsa -out cakey.pem 1024
2.2 生成根證書
openssl req -new -out careq.csr -key cakey.pem -subj "/C=CN/ST=bj/L=bj/O=test/OU=test/CN=192.168.1.127"
openssl x509 -req -in careq.csr -out cacert.pem -signkey cakey.pem -days 3650
三、生成金鑰庫
keytool -genkey -alias app_server -validity 3650 -keyalg RSA -keysize 1024  -keypass boncme -storepass boncme -keystore app_server.jks -dname "C=CN, ST=bj, L=bj, O=bonc, OU=bonc, CN=192.168.1.127"
四、伺服器證書生成
keytool -certreq -alias app_server -sigalg MD5withRSA -file app_server.csr -keypass boncme -storepass boncme -keystore app_server.jks  注意:MD5withRSA也可以使用SHA1withRSA
openssl x509 -req -in app_server.csr -out servercert.pem -CA cacert.pem -CAkey cakey.pem -days 3650 -set_serial 0001
五、匯入金鑰庫
keytool -import -v -trustcacerts -keypass boncme -storepass boncme -alias ca_root -file cacert.pem -keystore app_server.jks
keytool -import -v -trustcacerts -storepass boncme -alias app_server -file servercert.pem  -keystore app_server.jks
keytool -import -alias app-ca -trustcacerts -keypass boncme -storepass boncme -file cacert.pem -keystore app_trust.jks 
六、檢視金鑰庫的方法
keytool -list -storepass boncme -keystore app_server.jks
七、將生成的金鑰庫檔案複製到weblogic工作域根目錄下,我的工作域路徑是/$MW_HOME/user_projects/domains/ssl_domain
cp *.jks /$MW_HOME/user_projects/domains/ssl_domain
八、在weblogic控制檯配置金鑰庫及ssl配置
8.1 配置金鑰庫【keystores】
   先進入金鑰庫頁籤(怎麼進入自己找找)
   修改為以下值(根據自己生成的檔名進行配置哦):
   金鑰庫【keystores】:定製標識和定製信任【Custom Identity and Custom Trust】
   定製標識金鑰庫【Custom Identity Keystore】:app_server.jks
   定製標識金鑰庫型別【Custom Identity Keystore Type】:jks                                 #不填寫預設是jks
   定製標識金鑰庫密碼短語【Custom Identity Keystore Passphrase】:boncme
   確認定製標識金鑰庫密碼短語【Confirm Custom Identity Keystore Passphrase】:boncme
   定製信任金鑰庫【Custom Trust Keystore】: app_trust.jks 
   定製信任金鑰庫型別【Custom Trust Keystore Type】:jks
   定製信任金鑰庫密碼短語【Custom Trust Keystore Passphrase】:boncme
   確認定製信任金鑰庫密碼短語【Confirm Custom Trust Keystore Passphrase】:boncme
   點選 儲存
8.2 配置SSL【SSL】
   修改為以下值:
   標識和信任位置【Identity and Trust Locations】:金鑰庫【keystores】
   私有金鑰別名【Private Key Alias】:app_server
   私有金鑰密碼短語【Private Key Passphrase】:boncme
   確認私有金鑰密碼短語【Confirm Private Key Passphrase】:boncme
   勾選 使用JSSE SSL【Use JSSE SSL】  #這裡要重點予以說明,預設情況下weblogic使用的是WebLogic JRockit JDK SSL語言機制,而我們一般都會配置Sun JDK,並用它來生成金鑰庫檔案
   點選 儲存
   重啟服務 . $MW_HOME/user_projects/domains/base_domain/startWebLogic.sh 
8.3 配置一般資訊【General】
   勾選 啟用 SSL 監聽埠【SSL Listen Port Enabled】
   點選 儲存
   重啟服務 . $MW_HOME/user_projects/domains/base_domain/startWebLogic.sh 
8.4 錯誤情況及解決方案
    錯誤1:<Error> <Socket> <BEA-000438> <Unable to load performance pack. Using Java I/O instead. Please ensure that libmuxer library is in  #說明:weblogic官網都沒有提供64位的下載,反正我是沒找到,因此使用JDK64位的,需要做這樣一個動作解決這個問題
    解決方案:cp $MW_HOME/wlserver/server/native/win/x64/wlntio.dll  /usr/jdk1.8.0_121/bin/     
    錯誤2:Inconsistent security configuration, java.lang.RuntimeException: Cannot convert identity certificate
    解決方案:勾選SSL也籤的 “使用 JSSE SSL”


    至此,單向SSL配置完畢
九、雙向SSL配置
9.1 在weblogic的配置方面,只需要修改以下內容
    在SSL頁籤--》進入高階(最下面)--》雙向客戶機證書行為  選擇 請求客戶機證書並強制使用
    該部分忽略,本人未做驗證,以上過程主要參考至 http://dead-knight.iteye.com/blog/1941716  請大家參閱,許多細節做了一些調整