WebLogic配置SSL
WebLogic Server 10配置SSL V1.0WebLogic Server 10配置SSL(版本號:V1.0) ,WebLogic Server 10配置SSL
WebLogic Server 10配置SSL V1.0
WebLogic Server 10配置SSL
(版本號:V1.0)
,WebLogic Server 10配置SSL V1.0
修改記錄:
WebLogic Server 10配置SSL V1.0
目 錄
1.預(yù)備知識 ................................................................................................................... 4
1.1 SSL(Server Socket Layer)簡介 ............................................................................... 4
1.2 SSL工作原理 ...................................................................................................... 4
2. 配置WebLogic Server的SSL ....................................................................................... 5
2.1使用weblogic 自帶的Demo 版本的證書................................................................ 5
2.2使用自己的CA 簽名的證書.................................................................................... 6
2.2.1所需軟件 ......................................................................................................... 6
2.2.2創(chuàng)建服務(wù)器證書,客戶端證書與keystore . ...................................................... 6
2.2.3配置Weblogic . ................................................................................................. 7
,WebLogic Server 10配置SSL V1.0
1.預(yù)備知識
1.1 SSL(Server Socket Layer)簡介
在網(wǎng)絡(luò)上信息在源-宿的傳遞過程中會經(jīng)過其它的計(jì)算機(jī)。一般情況下,中間的計(jì)算機(jī)不會監(jiān)聽路過的信息。但在使用網(wǎng)上銀行或者進(jìn)行信用卡交易的時候有可能被監(jiān)視,從而導(dǎo)致個人隱私的泄露。由于Internet 和Intranet 體系結(jié)構(gòu)的原因,總有某些人能夠讀取并替換用戶發(fā)出的信息。隨著網(wǎng)上支付的不斷發(fā)展,人們對信息安全的要求越來越高。因此Netscape 公司提出了SSL 協(xié)議,旨在達(dá)到在開放網(wǎng)絡(luò)(Internet)上安全保密地傳輸信息的目的,這種協(xié)議在WEB 上獲得了廣泛的應(yīng)用。 之后IETF(www.ietf.org)對SSL 作了標(biāo)準(zhǔn)化,即RFC2246,并將其稱為TLS (Transport Layer Security),從技術(shù)上講,TLS1.0與SSL3.0的差別非常微小。。
1.2 SSL工作原理
SSL 協(xié)議使用不對稱加密技術(shù)實(shí)現(xiàn)會話雙方之間信息的安全傳遞??梢詫?shí)現(xiàn)信息傳遞的保密性、完整性,并且會話雙方能鑒別對方身份。不同于常用的http 協(xié)議,我們在與網(wǎng)站建立SSL 安全連接時使用https 協(xié)議,即采用https://ip:port/的方式來訪問。
當(dāng)我們與一個網(wǎng)站建立https 連接時,我們的瀏覽器與Web Server之間要經(jīng)過一個握手的過程來完成身份鑒定與密鑰交換,從而建立安全連接。具體過程如下:
用戶瀏覽器將其SSL 版本號、加密設(shè)置參數(shù)、與session 有關(guān)的數(shù)據(jù)以及其它一些必要信息發(fā)送到服務(wù)器。
服務(wù)器將其SSL 版本號、加密設(shè)置參數(shù)、與session 有關(guān)的數(shù)據(jù)以及其它一些必要信息發(fā)送給瀏覽器,同時發(fā)給瀏覽器的還有服務(wù)器的證書。如果配置服務(wù)器的SSL 需要驗(yàn)證用戶身份,還要發(fā)出請求要求瀏覽器提供用戶證書。
客戶端檢查服務(wù)器證書,如果檢查失敗,提示不能建立SSL 連接。如果成功,那么繼續(xù)。 客戶端瀏覽器為本次會話生成pre-master secret ,并將其用服務(wù)器公鑰加密后發(fā)送給服務(wù)器。
如果服務(wù)器要求鑒別客戶身份,客戶端還要再對另外一些數(shù)據(jù)簽名后并將其與客戶端證書一起發(fā)送給服務(wù)器。
如果服務(wù)器要求鑒別客戶身份,則檢查簽署客戶證書的CA 是否可信。如果不在信任列表中,結(jié)束本次會話。如果檢查通過,服務(wù)器用自己的私鑰解密收到的pre-master secret ,并用它通過某些算法生成本次會話的master secret。
客戶端與服務(wù)器均使用此master secret生成本次會話的會話密鑰(對稱密鑰) 。在雙方SSL 握手結(jié)束后傳遞任何消息均使用此會話密鑰。這樣做的主要原因是對稱加密比非對稱加密的運(yùn)算量低一個數(shù)量級以上,能夠顯著提高雙方會話時的運(yùn)算速度。
客戶端通知服務(wù)器此后發(fā)送的消息都使用這個會話密鑰進(jìn)行加密。并通知服務(wù)器客戶端已經(jīng)完成本次SSL 握手。
服務(wù)器通知客戶端此后發(fā)送的消息都使用這個會話密鑰進(jìn)行加密。并通知客戶端服務(wù)器
,WebLogic Server 10配置SSL V1.0
已經(jīng)完成本次SSL 握手。
本次握手過程結(jié)束,會話已經(jīng)建立。雙方使用同一個會話密鑰分別對發(fā)送以及接受的信息進(jìn)行加、解密。。
2. 配置WebLogic Server的SSL
2.1使用weblogic 自帶的Demo 版本的證書
登錄WebLogic Console
Servers -> AdminServer -> General -> 選擇
SSL Listen Port Enabled
Servers -> AdminServer -> Keystores
選擇Demo Identity and Demo Trust
,WebLogic Server 10配置SSL V1.0
2.2使用自己的CA 簽名的證書
2.2.1所需軟件
Openssl 0.9.9.6
用途:用來產(chǎn)生CA 證書、簽名并生成IE 可導(dǎo)入的PKCS#12格式私鑰。
下載: http://www.openssl.org/
2.2.2創(chuàng)建服務(wù)器證書,客戶端證書與keystore
無特別說明,
OpenSSL 命令運(yùn)行于$OpenSSLbin
keytool 命令運(yùn)行于$JAVAbin(一般是$beajrockit_150_11bin)
● 生成公司內(nèi)部用的根密鑰對(相當(dāng)于CA 根密鑰對)
openssl genrsa -out CCS-CA.key 1024
● 導(dǎo)出公鑰成證書, 并用私鑰自簽名, 生成公司內(nèi)部用的自簽名根證書(相當(dāng)于CA 根證書) openssl req -new -x509 -days 24820 -key CCS-CA.key -out CCS-CA.crt -config openssl.cnf
● 生成某服務(wù)器用密鑰對
keytool -genkey -alias ccs_server_a -validity 7300 -keyalg RSA -keysize 512 -keystore ccs_server_a.jks
CN(名字與姓氏) 必須填寫為服務(wù)器域名或者IP 地址
,WebLogic Server 10配置SSL V1.0
WebLogic 一般只支持512位加密強(qiáng)度
● 生成某服務(wù)器用證書請求文件
keytool -certreq -alias ccs_server_a -sigalg "MD5withRSA" -file ccs_server_a.csr -keystore ccs_server_a.jks
● 用公司內(nèi)部用根私鑰和根證書為某服務(wù)器證書請求簽名
openssl ca -keyfile CCS-CA.key -cert CCS-CA.crt -in ccs_server_a.csr -out ccs_server_a.pem -config openssl.cnf
如果已經(jīng)為同樣的申請簽過名, 重新簽名需刪除$OpenSSLbin?moCAindex.txt中相關(guān)記錄 生成的pem 文件刪除其它內(nèi)容, 只保留
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
● 導(dǎo)入公司內(nèi)部用的自簽名根證書到cacerts
CCS-CA -file CCS-CA.crt keytool -import -v -alias
-keystore JAVA_HOME/jre/lib/security/cacerts
cacerts 缺省密碼為changeit
● 導(dǎo)入公司內(nèi)部用的自簽名根證書到Custom Trust Keystore
keytool -import –alias CCS-CA -trustcacerts -file CCS-CA.crt –keystore serveratrust.jks
● 導(dǎo)入某服務(wù)器用證書簽名到Custom Identity Keystore
keytool -import -trustcacerts -alias ccs_server_a -file ccs_server_a.pem -keystore ccs_server_a.jks
● 配置IE 客戶端
在每臺客戶端上安裝根證書CCS-CA.crt
2.2.3配置Weblogic
將兩個jks 文件(serveratrust.jks,ccs_server_a.jks)或者是使用自己創(chuàng)建的證書申請,然后由信任機(jī)構(gòu)簽名的證書,拷貝到WebLogic 自己的Domain 的目錄下.
登錄WebLogic Console
Servers -> AdminServer -> General -> 選擇SSL Listen Port Enabled
,WebLogic Server 10配置SSL V1.0
Servers -> AdminServer -> Keystores
選擇Custom Identity and Custom Trust
Custom Identity
Custom Identity Keystore: 填寫完整路徑的ccs_server_a.jks
Custom Identity Keystore Type: JKS
Custom Identity Keystore Passphrase: ccs_server_a.jks的密碼
Confirm Custom Identity Keystore Passphrase: ccs_server_a.jks的密碼 Custom Trust
Custom Trust Keystore: 填寫完整路徑的serveratrust.jks
Custom Trust Keystore Type: JKS
Custom Trust Keystore Passphrase: serveratrust.jks的密碼
Confirm Custom Trust Keystore Passphrase: serveratrust.jks的密碼
,WebLogic Server 10配置SSL V1.0
Servers -> AdminServer ->SSL
Private Key Alias:ccs_server_a
Private Key Passphrase: ccs_server_a的密碼
Confirm Private Key Passphrase: ccs_server_a的密碼
,WebLogic Server 10配置SSL V1.0
重啟WebLogic
并通過https 訪問測試