用ssl.ca自制证书

我们可以使用Openssl来制作证书,也可以使用ssl.ca来制作证书

我的服务器端采用的是Appweb 3.4.2-0 操作系统为CentOS release 5.10 (Final)

目录结构为:Openssl 位于 /usr/include/openssl

Appweb的ssl文件夹 位于  etc/appweb/ssl

对于ssl支持路径的配置文件位于 etc/appweb/conf/hosts/ssl-default.conf

ssl.ca 的下载地址是 http://www.openssl.org/contrib/ssl.ca-0.1.tar.gz

首先要生成根证书 #./new-root-ca.sh

要为 ca.key 输入两次密码,学习一个单词 Verifying 为确认的意思

然后输入各种信息来签署根证书,这样生成的 ca.key 和 ca.crt 两个文件

下面还要为我们的服务器生成一个证书

# ./new-server-cert.sh server (这个证书的名字是server)

还是要输入一堆信息,根据提示输入就可以

这样就生成了 server.csr 和 server.key 这两个文件

还要对证书进行签署

# ./sign-server-cert.sh server

如果是单向认证,则不需要有客户端证书

# ./new-user-cert.sh client

这里要注意证书信息不能与其它证书完全一样,这里修改Email与服务器证书不一样就行

客户端证书仍然是需要签署的

# ./sign-user-cert.sh client

可以选择把格式转换成p12

# ./p12.sh client

然后需要到 ssl-default.conf 中修改路径

如果使用的是Apache,修改的则应该是 httpd-ssl.conf

SSLCertificateFile 和 SSLCertificateKeyFile

下面是开启客户端认证,如果是单向认证就不用开启了

SSLCACertificateFile

然后就可以通过浏览器进行访问了,使用https进行访问

证书导入的时候,Chrome是在设置中选择查看高级设置

然后找到HTTPS / SSL 点击管理证书,然后就可以导入了

如果转换成了p12格式,也可以直接双击进行导入

我选择的是导入到受信任的根证书发布机构

如果在制作证书的时候采用了弱签名算法,Chrome会提示你

由于服务器的证书与网址不相符,Chrome还是会提示你

如果都没有问题,Chrome就会显示为一把完整的锁头

这时Chrome还是会显示一个锁头和一个×

这表示Chrome仍然存有疑问

猜你喜欢

转载自blog.csdn.net/wh8_2011/article/details/81252178