2009年3月6日星期五

WLS_014:WebLogic Server基本管理之十:配置单向SSL认证

本实验涉及一些安全方面的知识:请参考《密码学的基本概念》、《SSL 介绍》、《keytool 使用指南》。

详细步骤说明:
1. 使用keytool创建一个identity keystore,其中包括一个私钥和一个公钥以及一个自签名的数字证书。
(1)创建一个目录,比如security。
(2)在security目录下运行keytool -genkey命令。
keytool -genkey -v -alias dwkey -keyalg RSA -keysize 512 -dname "CN=localhost, OU=Dizzyworld Web,O=Dizzyworld\, Inc., C=US" -keypass dwkeypass -validity 365 -keystore dw_identity.jks -storepass dwstorepass
输出如下:
创建512比特RSA键值对及针对CN=localhost, OU=Dizzyworld Web, O="Dizzyworld, Inc.", C=US的自我签署的认证 (MD5WithRSA)
(3)复制dw_identity.jks 到[domain_name]目录下。

2. 创建证书签发请求文件:Certificate Signing Request(CSR)。
(1)在security目录下运行keytool -certreq命令。
keytool -certreq -v -alias dwkey -file dw_cert_request.pem -keypass dwkeypass -storepass dwstorepass -keystore dw_identity.jks
输出如下:
保存在文件中的认证要求
将此提交给您的CA
(2)复制dw_cert_request.pem到[domain_name]目录下。

3. 在Console中配置keystore
在这里要指定keystore的位置:即位于[domain_name]目录下的dw_identity.jks。
Keystores: Custom Identity and Java Standard Trust
Custom Identity Keystore: dw_identity.jks
Custom Identity Keystore Type: JKS
Custom Identity Keystore Passphrase: dwstorepass
Java Standard Trust Keystore Passphrase: changeit



4. 在Console中配置配置SSL
在这里要指定私钥的口令。
Identity and Trust Locations: Keystores
Private Key Alias: dwkey
Private Key Passphrase: dwkeypass



别忘了设置Managed Server的SSL Listen Port:7004,然后重启Managed Server。

5. 测试:https://localhost:7004/benefits/
你会看到一个警告页面,因为我们的证书是“自签名”的,没有得到CA的认证。

点击继续浏览此网站。


至此,我们配置了服务器端的单向SSL认证,当访问服务器上的网站时,SSL握手过程如下:
(1)浏览器验证服务器上的数字证书。
(2)通过后,浏览器用公钥加密本次会话密钥(对称加密密钥),并传给服务器。
(3)服务器用私钥解密本次会话密钥(对称加密密钥)。
(4)浏览器和服务器用本次会话密钥(对称加密密钥)加密所有传输的内容。

没有评论: