目录
1.启动KeytoolGUI工具 (3)
2.信任列表keystore的制作 (3)
3.服务器证书keystore的制作 (5)
3.1.产生keystore,导入信任根证书 (5)
3.2.产生密钥对,生成请求 (6)
3.2.1.产生密钥对 (6)
3.2.2.导入CA签发的服务器cer证书 (8)
3.3.从pfx文件导入 (9)
4.注意事项 (11)
KeytoolGUI工具是一个Java图形界面的密钥库管理工具,支持JKS、PKCS12(pfx文件)等密钥库格式。
利用该工具可以非常方便的生成信任列表keystore、服务器证书keystore,不必再使用繁琐且易出错的keytool命令行。
1.启动KeytoolGUI工具
启动该工具需要有jre环境,最好是1.4版本。
设置好jre/bin路径,达到在命令行中键入java命令可以出现提示的效果后,运行run.cmd即可启动。
启动后界面如下:
2.信任列表keystore的制作
信任列表keystore的生成就是将根证书导入keystore中。
选择File菜单中的New Keystore,新建一个jks格式的keystore,如图:
选择JKS格式,点击OK。
出现如下界面:(和第一张图相比,工具栏图标已经可见)
点击工具栏的导入信任根证书图标(如下图),或按Ctrl+T。
出现如下界面,此时即可选择根证书文件执行导入。
导入过程中会提示该证书无法验证信任路径,并将证书信息显示出来,询问是否信任等对话框,一直确定后,给根证书任意取一个别名,即完成了根证书的导入工作。
完成导入工作后,即可将该keystore保存,点击保存按钮后,出现设置Keystore密码的界面,如下图:
输入至少六位的密码,选择保存路径后,信任证书列表Keystore即成功生成。
一般来说,在根证书中只需导入顶级根证即可。
客户端浏览器中只要安装了相应的二级根证,二级根证所颁发的证书即可获得信任,出现在证书选择框中。
3.服务器证书keystore的制作
3.1. 产生keystore,导入信任根证书
首先也是需要新建一个JKS格式的keystore文件,和产生信任列表的Keystore 步骤相同。
然后将根证书、颁发服务器证书的二级根证书导入为信任证书,和产生信任列表Keystore步骤相同。
生成服务器证书keystore有两种方式,一种是产生密钥对,生成请求到CA 签发后再导入到keystore中,一种是将pfx证书直接导入。
下边是两种方式的介绍:
3.2. 产生密钥对,生成请求
3.2.1.产生密钥对
点击工具栏产生密钥对的图标,如图:
点击后出现选择密钥对算法的选择框,如下图:默认是DSA算法,注意一定要选择RSA算法!!!
点击OK按钮后,即产生密钥对,之后会要求输入证书的DN信息,如图:
需要注意的是,如果该应用是用域名来访问,CN项需要填写域名,如果是用IP来访问,CN项需要填写IP,否则在访问时会出现警告信息。
填写完毕后,为该证书取一个别名,默认是CN项所填的内容,一般我们会把它命名为webserver:
点击OK,又会要求给该密钥对一个保护密码:如图:
输入密码后,点击OK,即提示密钥对产生成功。
产生成功密钥对之后,该密钥对即被列出来,在其上点击右键,出现如下菜单:
选择Genereate CSR选项,生成请求,选择存储路径后,即可将请求保存到文件中。
3.2.2.导入CA签发的服务器cer证书
在CA根据请求签发cer证书后,即可将cer证书导入到Keystore中。
在密钥对列表上点击右键,选择菜单中的Import CA Reply,如图:
之后将会提示安装成功。
注意:如果安装失败,请注意服务器证书是否带有头尾,即----BEGIN
CERTIFICATE----- 和-----END CERTIFICATE-----,尾部还需要多加一个
回车。
完成以上工作后,即可将该keystore保存,点击保存按钮后,出现设置Keystore密码的界面,如下图:
输入至少六位的密码,选择保存路径后,服务器证书Keystore即成功生成。
3.3. 从pfx文件导入
新建Keystore文件,点击工具栏图标,如图:
之后会出现选择pfx、p12格式的证书的文件选择框,如图:
选择一个pfx文件后,即被要求输入该pfx文件的保护密码,如图:
输入密码后,出现如下界面:
证书序列号会出现在列表中,选择后,点击Import按钮,输入一个别名:
输入别名后,点击OK,要求输入保护密码:
输入至少6位的密码后,点击OK。
即会提示导入成功。
完成以上工作后,即可将该keystore保存,点击保存按钮后,出现设置Keystore密码的界面,如下图:
输入至少六位的密码,选择保存路径后,服务器证书Keystore即成功生成。
4.注意事项
1、Keystore保护密码和密钥对(Key pair)的保护密码是不同的两个密码。
在各平
台下配置时需要注意区分,一般来说我们都会把这两个密码设为同一密码。
2、除指定Keystore外,如Weblogic可能还需要指定服务器的公钥证书。
3、在Websphere中,不要覆盖原有的信任列表文件和服务器证书文件,而是重
新建立一个SSL配置,指定keystore。
然后将需要更改的SSL端口指定到该配置即可。
因为如果将原有设置(DefaultSSLSettings)删除,可能会导致系统异常。
4、作服务器配置时,必须将原有系统的配置文件、默认Keystore文件作备份。