在BEA WebLogic Server 8.1上启用SSL的方法
赵冬路
2004年9月
本方法采用标准的Java keytool方式,并基于标准的Java keystore方式为BEA服务器提供Private key、Identity Cert和Trusted Cert存储。
基本步骤如下:
1、通过keytool为服务器申请数字证书
2、配置Bea服务器,安装相关的证书和private key
3、激活和调整SSL服务功能
1. 通过keytool为服务器申请数字证书
通过JDK提供的keytool可以生成密钥对和证书申请文件,在本步骤中,还需要一个证书发放机构(CA机构),并为keytool生成的证书请求签发服务器证书。基本步骤如下:
1、生成密钥对
2、生成证书申请文件
3、导入服务器证书
4、导入证书签发机构的证书文件
1.1. 生成密钥对
生成密钥对,运行如下命令:
.\keytool -genkey -keyalg RSA -keysize 512 -dname "cn=zhao.iei-china.com, ou=RD, o=IEI, c=CN" -alias business -keypass admin123 -keystore C:\temp\mykeystore\mykeystore.jks -storepass admin123 -validity 180
注意:本步骤将创建keystore文件“C:\temp\mykeystore\mykeystore.jks”,keystore的口令为“admin123”,keystore中存放密钥的口令为“admin123”,密钥长度为512,密钥别名为“business”,服务器证书的subject为“cn=zhao.iei-china.com, ou=RD, o=IEI, c=CN”。
1.2. 生成证书申请文件
生成证书申请文件,运行如下命令:
.\keytool -certreq -alias business -keystore c:\temp\mykeystore\mykeystore.jks -file c:\temp\mykeystore\server.csr
注意:本步骤将为在mykeystore.jks中别名为business的密钥对创建证书申请请求文件“c:\temp\mykeystore\server.csr”。
1.3. 导入服务器证书
导入服务器证书文件应该在CA机构处理我们的证书申请请求后,并为我们的服务器颁发证书之后。我们可以通过CA机构的申请程序,将CSR文件或其内容提交到CA机构,在其受理,并颁发证书后,我们可以下载该证书文件。
下图是证书被iPlanet Certificate Management System颁发证书后的,下载证书的页面。
从CA服务机构得页面中获得以Base 64 编码携带Cert Chain信息的服务器证书。复制上图标记出的区域,以该内容创建一个证书文件“c:\temp\mykeystore\serverwithchain.cer”。
运行如下命令,将证书文件导入keystore中。
.\keytool -import -alias business -keystore c:\temp\mykeystore\mykeystore.jks -file c:\temp\mykeystore\serverwithchain.cer
1.4. 导入证书签发机构的证书文件
获取证书签发机构的签发证书,将该证书保存为“c:\temp\mykeystore\trust-ca.cer”文件,运行如下命令,将该证书导入keystore中。
.\keytool -import -trustcacerts -keystore c:\temp\mykeystore\mykeystore.jks -file c:\temp\mykeystore\trust-ca.cer
2. 配置Bea服务器,安装相关的证书和private key
启动Bea WebLogic Server,访问WebLogic服务器的控制台,按照如下步骤进行配置。
1、在需要安装证书的BEA的服务器上,选择KeyStore&SSL选项。
2、选择KeyStore Configuration的Change
3、选择Keystore的类型为“Custom Identity And Custom Trust”,点击“Continue”按钮
在Customer Identity Key Store File Name和Custome trust key store file name中填写前面所创建的keystore文件的全路径;Custom Identity Key Store Type和Custom Trust Key Store Type均填写为JKS;Pass Phrase均填写前面创建时所指定的口令“admin123”。然后点击“Continue”按钮.
4、填写Provate Key Settings
填写Private Key在KeyStore中的别名和口令。并点击“Continue”按钮。
3. 激活和调整SSL服务功能
在BEA WebLogic服务器的控制台界面中选择General页面,进行SSL的配置。
选中SSL Listen Port Enable选项,并为SSL Listen Port分配端口。设置完成后点击Apply按钮。
如果需要强制Client端的证书认证,可以将General页面中的高级选项的“Two Way Client Cert Behavior:”选为“Client Certs Requested And Enforced”。
重新启动BEA服务器,在服务器启动过程中将出现如下信息,表示服务器启动正常。
<2004-9-27 下午18时32分46秒 CST> <Notice> <Security> <BEA-090170> <Loading the private key stored under the alias business from the JKS keystore file C:\Temp\mykeystore\mykeystore.jks.>
<2004-9-27 下午18时32分46秒 CST> <Notice> <Security> <BEA-090171> <Loading the identity certificate stored under the alias business from the JKS keystore file C:\Temp\mykeystore\mykeystore.jks.>
<2004-9-27 下午18时32分46秒 CST> <Notice> <Security> <BEA-090169> <Loading trusted certificates from the JKS keystore file C:\Temp\mykeystore\mykeystore.jks.>
4. 验证安装结果
服务器正常启动后访问https://yourhost将出现如下页面,即表示安装配置正常。
5. 附录
5.1. 参考文档
BEA WebLogic 8.x的Security配置文档
http://edocs.beasys.com/wls/docs81/secmanage/ssl.html
JDK Keytool的使用手册
http://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/keytool.html
5.2. 文件内容
本配置所涉及文件的内容(只列出文本格式的文件)
server.csr
-----BEGIN NEW CERTIFICATE REQUEST-----
MIH/MIGqAgEAMEUxCzAJBgNVBAYTAkNOMQwwCgYDVQQKEwNJRUkxCzAJBgNVBAsTAlJEMRswGQYD
VQQDExJ6aGFvLmllaS1jaGluYS5jb20wXDANBgkqhkiG9w0BAQEFAANLADBIAkEAxE14THZ2eNtz
GcNJZ5rGOyfGr7QUqAF144cjKVUl3N52IjS542SBTMsuqDe9qtNpb0/ncCnGRYue2efznxgDRQID
AQABoAAwDQYJKoZIhvcNAQEEBQADQQCh7btysphYdfGHD+fnqC9sVlHDm3s3DC3m/L3naxsE+7dk
kSv3Iwd4IMd9fRdQQPoXy9Ei7SZcmSHtTs44961G
-----END NEW CERTIFICATE REQUEST-----
serverWithChain.cer
-----BEGIN CERTIFICATE-----
MIIERgYJKoZIhvcNAQcCoIIENzCCBDMCAQExADAPBgkqhkiG9w0BBwGgAgQAoIIE
FzCCAfYwggGgoAMCAQICAQ8wDQYJKoZIhvcNAQEEBQAwWTELMAkGA1UEBhMCQ04x
EDAOBgNVBAcTB0JlaWppbmcxDDAKBgNVBAoTA0lFSTEMMAoGA1UECxQDUiZEMRww
GgYDVQQDExNDZXJ0aWZpY2F0ZSBNYW5hZ2VyMB4XDTA0MDkyNzEwMjg0NloXDTA1
MDkyNzEwMjg0NlowRTELMAkGA1UEBhMCQ04xDDAKBgNVBAoTA0lFSTELMAkGA1UE
CxMCUkQxGzAZBgNVBAMTEnpoYW8uaWVpLWNoaW5hLmNvbTBcMA0GCSqGSIb3DQEB
AQUAA0sAMEgCQQDETXhMdnZ423MZw0lnmsY7J8avtBSoAXXjhyMpVSXc3nYiNLnj
ZIFMyy6oN72q02lvT+dwKcZFi57Z5/OfGANFAgMBAAGjZzBlMBEGCWCGSAGG+EIB
AQQEAwIGQDAOBgNVHQ8BAf8EBAMCBPAwHwYDVR0jBBgwFoAUoGdjHEQLOQkUUZQu
41awzsopinowHwYDVR0RBBgwFoEUemhhb2RsQGllaS1jaGluYS5jb20wDQYJKoZI
hvcNAQEEBQADQQAY6s8Wedwl9KFeiLzLZo9w1+R+R92+yrk5nQ9yYg+fP2ITKokW
iOXmpUSrjdtTWxXLcRJ3om6mg3HCf+ag8kSqMIICGTCCAcOgAwIBAgIBATANBgkq
hkiG9w0BAQUFADBZMQswCQYDVQQGEwJDTjEQMA4GA1UEBxMHQmVpamluZzEMMAoG
A1UEChMDSUVJMQwwCgYDVQQLFANSJkQxHDAaBgNVBAMTE0NlcnRpZmljYXRlIE1h
bmFnZXIwHhcNMDQwOTIwMTYwMDAwWhcNMDYwOTIwMTYwMDAwWjBZMQswCQYDVQQG
EwJDTjEQMA4GA1UEBxMHQmVpamluZzEMMAoGA1UEChMDSUVJMQwwCgYDVQQLFANS
JkQxHDAaBgNVBAMTE0NlcnRpZmljYXRlIE1hbmFnZXIwXDANBgkqhkiG9w0BAQEF
AANLADBIAkEA4oILCtKJf+TadpbPK8LdgqGKw3qggBt8RcvbnAZ/mbqL1S2x+FWl
FjP/eF+Y/K1vEvYVUtWdlgRsju4u0UuuXQIDAQABo3YwdDARBglghkgBhvhCAQEE
BAMCAAcwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUoGdjHEQLOQkUUZQu41aw
zsopinowHwYDVR0jBBgwFoAUoGdjHEQLOQkUUZQu41awzsopinowDgYDVR0PAQH/
BAQDAgGGMA0GCSqGSIb3DQEBBQUAA0EAFmCKVIHS2khcA9r9KUoUBSj7Y1UCGTJ+
JdGSC25IQiTzOW2lycXkMJOvsSip6dZHVMY/SLQD7+VLqbwofwL4ezEA
-----END CERTIFICATE-----
trust-ca.cer
-----BEGIN CERTIFICATE-----
MIICGTCCAcOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBZMQswCQYDVQQGEwJDTjEQ
MA4GA1UEBxMHQmVpamluZzEMMAoGA1UEChMDSUVJMQwwCgYDVQQLFANSJkQxHDAa
BgNVBAMTE0NlcnRpZmljYXRlIE1hbmFnZXIwHhcNMDQwOTIwMTYwMDAwWhcNMDYw
OTIwMTYwMDAwWjBZMQswCQYDVQQGEwJDTjEQMA4GA1UEBxMHQmVpamluZzEMMAoG
A1UEChMDSUVJMQwwCgYDVQQLFANSJkQxHDAaBgNVBAMTE0NlcnRpZmljYXRlIE1h
bmFnZXIwXDANBgkqhkiG9w0BAQEFAANLADBIAkEA4oILCtKJf+TadpbPK8LdgqGK
w3qggBt8RcvbnAZ/mbqL1S2x+FWlFjP/eF+Y/K1vEvYVUtWdlgRsju4u0UuuXQID
AQABo3YwdDARBglghkgBhvhCAQEEBAMCAAcwDwYDVR0TAQH/BAUwAwEB/zAdBgNV
HQ4EFgQUoGdjHEQLOQkUUZQu41awzsopinowHwYDVR0jBBgwFoAUoGdjHEQLOQkU
UZQu41awzsopinowDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBBQUAA0EAFmCK
VIHS2khcA9r9KUoUBSj7Y1UCGTJ+JdGSC25IQiTzOW2lycXkMJOvsSip6dZHVMY/
SLQD7+VLqbwofwL4ew==
-----END CERTIFICATE-----