原来做的一个金融软件项目, 部署到生产环境后,客户要求使用SSL协议保证数据安全性(后来分析实际用处不大),在此整理了一些SSL基本概念
和不同服务器(weblogic,websphere,apache,)的ssl配置以及自建CA中心生成证书
--第二篇:weblogic8上配置ssl--
注:安装前需要注意weblogic8开发版只支持最高512位密钥长度,要想产生大于512位的密钥,需要安装licence
一,先经过以下步骤生成证书文件
1 使用JDK中的keytool生成密钥对配置
1.1 生成密钥对
keytool -genkey -alias 密钥别名 -keyalg RSA -keystore 密钥文件名
例:
keytool -genkey -alias myserver -keyalg RSA -keystore mytest.jks
之后输入密码和一系列申请者的信息,注:
在What is your first and last name中需要输入web server的访问域名
最终结果:生成mytest.jks文件
1.2 生成CSR文件,即需要发给CA机构进行签名的文件
使用刚刚生成的密钥对文件来生成CSR文件:
keytool -certreq -keyalg RSA –alias 密钥别名 -file 证书文件名 -keystore 密钥文件名
我猜这里面包含申请人信息和刚刚产生密钥对中的公钥.经验证,确定.
例:
keytool -certreq -keyalg RSA -alias myserver -file mytest.csr -keystore mytest.jks
最终结果:生成mytest.csr文件
1.3 将mytest.csr文件发送给CA中间认证机构.
CA签完名后,会把签过名的证书内容(文本格式)以mail的形式发回来.之后把mail中内容保存成XXX.crt文件格式, window平台中配置需要转成转成二进制.cer格式文件,例如myserver.cer文件
1.4 得到中间CA证书
从CA认证机构下载中间CA证书(即包含中级CA机构公钥的证书文件,也指服务器证书链)一般一个crt的字符串,拷贝下来后保存成crt文件;在window平台中配置需要转成.cer文件,如caroot.cer .
1.5 导入证书
使用CAroot的中级证书及已被CA中级机构签过名的证书,导入至私钥文件中:
*导入中级CA证书
keytool –import –alias root –keystore mytest.jks –trustcacerts –file caroot.cer
*导入服务器证书
keytool –import –alias myserver–keystore mytest.jks –trustcacerts –file myserver.cer
至此mytest.jks中已被导入了CA中间证书和已签过名的服务器证书
说明:按以上配置分析,最终生成的结果可以分开几个文件配置,也可以都导入到一个目的文件中配置
二,经过以上步骤后,再通过weblogic控制台配置ssl(有详细配置贴图)
(由于原来写的技术配置文档有很多截图,稍后再一一贴到本篇中)
三,配置实例:在此写了按步的配置实例供参考:
1,生成密钥对
keytool -genkey -alias myserver -keyalg RSA -keystore mytest.jks
其中,最关键是组织信息中第一行输入 What is your first and last name
在这里要输入正式运行时服务器的域名,在这里我们输入:
www.belltest.com
最终生成jks文件:mytest.jks
2,生成CSR证书签名请求文件
keytool -certreq -keyalg RSA -alias myserver -file mytest.csr -keystore mytest.jks
最终生成CSR文件:mytest.csr
3,登陆一个CA中间机构网站,到试用区申请一个试用的签名证书,在其间会提示把mytest.csr内容填入网站的申请步骤中.在线申请后就会立刻收到一个试用的签名证书,网站是使用程序自动生成并发送的,把mail中的
-----BEGIN CERTIFICATE-----
…
-----END CERTIFICATE-----
拷贝出来存成myserver.crt文件
4,在CA中间网站下载免费提供的根CA证书,存成caroot.cer(如果是crt文件,请转成cer格式)文件
5,把根CA与签过名的证书文件导入jks文件
注:用这种方法生成的结果是把我们的私钥,公钥,CA根证书(证书链)和签名全部放在一个jks文件中;当然,也可以把jks私钥和签过名的证书分别放入两个文件分别配置。
1),先查看一下第一步生成的jks文件中的内容:
keytool -list -keystore mytest.jks
2),在window环境下把根ca根证书文件和服务器证书文件都转成cer文件
双击证书文件后另存为der二进制即可
3),导入ca根证书文件
keytool -import -alias root -keystore mytest.jks -trustcacerts -file caroot.cer
4),导入服务器证书文件
keytool -import -alias myserver -keystore mytest.jks -trustcacerts -file myserver.cer
5)查看导入后的jks文件
keytool -list -keystore mytest.jks
发现里面已经存在两个指纹签名了
6,配置weblogic控制台,将上述生成的jks文件及密码都输入到wls控制台中
配置完成