OpenSSL来制作证书,在IIS中配置HTTPS(SSL)笔记
Skyworth TTG Holdings LimitedSkyworth BuildingUnit A 13-16/F, Gaoxin Ave. 1. S.Nanshan District, She
Skyworth TTG Holdings Limited
Skyworth Building
Unit A 13-16/F, Gaoxin Ave. 1. S.
Nanshan District, Shenzhen, China 使用OpenSSL 来制作证书,在IIS 中配置HTTPS (SSL )笔记
下载Win32编译的openssl 版本0.9.8e.
1. 获取IIS 证书请求:打开IIS ,右键单击【默认网站】,在【目录安全性】选项卡中点击【服务器证书】按钮,【下一步】,【新建证书】,【现在准备证书请求--下一步】,输入【名称】, 输入【单位】和【部门】,输入【公用名称】,选择【国家】并输入【省】和【市县】并【下一步】,【下一步】,【下一步】,【完成】,IIS 的证书请求已经获取,就是C:�rtreq.txt。这里请牢记输入的信息。
2. 准备openssl 工作环境:把openssl(编译后的版本) 解压到D:OpenSSL-0.9.8e下,
在bin 目录下建立目录demoCA ,在demoCA 下建立private 和newcerts 目录,
并新建index.txt, 内容为空
如果没有serial 文件,则到 openssl 网站上下载openssl 的源文件,解压后,到apps�moCA下,拷贝serial 文件过来,两个目录两个文件都放到新建的 demoCA下。
3. 生成自签名根证书:
openssl req -x509 -newkey rsa:1024 -keyout ca.key -out ca.cer -days 3650 -config D:OpenSSL-0.9.8eopenssl.cnf
PEM pass phrase: password // 根证书私钥密码
Verifying - Enter PEM pass phrase: password
Country Name: CN
// 两个字母的国家代号 // 省份名称 // 城市名称 State or Province Name: HB Locality Name: WUHAN
Organization Name: Skyworth TTG
Organizational Unit Name: Service
Common Name: win2k3.vm.com
// 公司名称 // 部门名称 // 你的姓名(要是生成服务器端的证书一定要输入域名或者ip 地址) // Email地址
,Skyworth TTG Holdings Limited
Skyworth Building
Unit A 13-16/F, Gaoxin Ave. 1. S.
Nanshan District, Shenzhen, China 提醒:这时候,已经有ca.key:ca的私钥文件,ca.cer:ca的自签名根证书,certreq.txt:IIS的证书请求文件,三个文件。 现在将certreq.txt 拷贝到bin 目录下。
4. 用CA 证书ca.cer 为IIS 请求certreq.txt 签发证书:server.pem:
openssl ca -in certreq.txt -out server.pem -cert ca.cer -keyfile ca.key -config D:OpenSSL-0.9.8eopenssl.cnf -days 3650
Enter pass phrase for ca.key: password
Sign the certificate? [y/n]: y // 校验根证书私钥密码 // 用CA 根证书对服务器证书签字认证
1 out of 1 certificate requests certified, commit? [y/n] y // 提交证书
5. 把server.pem 转换成x509格式(可以不用转换):
openssl x509 -in server.pem -out server.cer
6. 将生成的根证书ca.cert 导入本地计算机,服务器端证书server.cer 导入到IIS:
双击ca.cer 文件,打开证书信息窗口,单击【安装证书】按钮,【下一步】,选择【将所有的证书放入下列存储区】,点击【浏览】按钮,选择【受信任的根证书颁发机构】,勾选“物理存储区”,然后存储在“受信任的根证书目录”下面的“本地计算机”子目录下,并点击【确定】,【下一步】,【完成】,【是】,根证书安装完毕!
切记: 要勾选“物理存储区”,然后存储在“受信任的根证书目录”下面的“本地计算机”子目录下
打开IIS ,在【默认网站】上单击右键【属性】,在【目录安全性】选项卡中点击【服务器证书】按钮,【下一步】,选择
【处理挂起的请求并安装证书】并【下一步】,正常情况下,您已经看到了文本框中就是D:server.cer,如果不是,自己点【浏览】按钮去找并【下一步】,【下一步】,【完成】。回到【目录安全性】选项卡在【安全通信】栏目中单击【编辑】按钮,勾上【要求安全通道(SSL)】,勾上【要求128位加密】,选择【要求客户端证书】,点击【确定】按钮。
7. 制作客户端证书:
(1)生成客户端证书:
openssl req -newkey rsa:1024 -keyout clikey.pem -out clireq.pem -days 3650 -config D:OpenSSL-0.9.8eopenssl.cnf
,Skyworth TTG Holdings Limited
Skyworth Building
Unit A 13-16/F, Gaoxin Ave. 1. S.
Nanshan District, Shenzhen, China 证书信息自己填写,有些内容要与根证书一致。
Enter PEM pass phrase: password // 客户端证书私钥密码
Verifying - Enter PEM pass phrase: password
Country Name: CN
// 两个字母的国家代号 // 省份名称 // 城市名称
// 公司名称 State or Province Name: HB Locality Name: WUHAN Organization Name: Skyworth TTG
Organizational Unit Name: Service // 部门名称
Common Name: client01 // 你的姓名(如:client01) // Email地址
a challenge password []:
an optional company name []:
(2)CA签发客户端证书: // 填不填随便,我不填 // 填不填随便,我不填
openssl ca -in clireq.pem -out client.cer -cert ca.cer -keyfile ca.key -config D:OpenSSL-0.9.8eopenssl.cnf
Enter pass phrase for ca.key: password
sign the certificate? [y/n] y // 校验根证书私钥密码 // 用CA 根证书对客户端证书签字认证
// 提交证书 1 out 1 certificate requests certified,commit? [y/n] y
(3)将客户端证书转换为pk12格式:
openssl pkcs12 -export -clcerts -in client.cer -inkey clikey.pem -out client01.p12
Enter pass phrase for clikey.pem: password // 客户端证书私钥密码
Enter Export Password: // IE导入时的密码(可以不需要)
Verifying - Enter Export Password:
,Skyworth TTG Holdings Limited
Skyworth Building
Unit A 13-16/F, Gaoxin Ave. 1. S.
Nanshan District, Shenzhen, China 重复上述步骤,可以生成多个客户端证书
8. 客户端安装信任的根证书和客户端证书:
打开internet explorer(IE),工具-internet 选项-内容-证书,点选' 个人'
再点击导入, 把客户端证书client01.p12导入到个人组里(*****切记:别忘了扩展名是p12) 。
这里还要输入刚才建立的输出密码password 才能倒入呢。
接着,点选' 受信任的根证书颁发机构' ,点击导入,把CA 根证书ca.cer 导入到受信任的根证书颁发机构里。
复制ca.cer 文件到客户端,打开证书信息窗口,单击【安装证书】按钮,【下一步】,选择【将所有的证书放入下列存储区】,点击【浏览】按钮,选择【受信任的根证书颁发机构】,勾选“物理存储区”,然后存储在“受信任的根证书目录”下面的“本地计算机”子目录下,并点击【确定】,【下一步】,【完成】,【是】,根证书安装完毕!
切记: 要勾选“物理存储区”,然后存储在“受信任的根证书目录”下面的“本地计算机”子目录下
11. 安装客户端证书:把bin 目录下的client.p12复制到D:并双击client.p12文件,【下一步】,【下一步】,输入客户端证书的密码并【下一步】,【下一步】,【完成】,【确定】。到此,客户端的证书也已经安完毕。