自己搭建CA颁发证书做https加密网站

如果网站是针对内网的访问的,自己搭建CA服务器颁发证书就可以,如果是针对互联网来访问的,还是买ssl证书比较好,今天就来介绍一下自己搭建CA服务器颁发证书做加密网站。

192.168.10.187 CA服务器

192.168.10.190 web服务器

(1)搭建CA

cd /etc/pki/CA

在这个目录下创建serial和index.txt两个文件

echo 00 > serial (00是颁发证书最初的版本号)

touch index.txt

(umask 006;openssl genrsa -out private/cakey.pem 4096) 生成私钥

openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650 生成自签名CA证书

 

(2)web服务器申请证书,CA服务器颁发证书

mkdir /etc/httpd/conf.d/ssl 创建一个目录来存放CA颁发的证书

(umask 006;openssl genrsa -out /etc/httpd/conf.d/ssl/httpd.key 2048) 生成私钥

openssl req -new -key /etc/httpd/conf.d/ssl/httpd.key -out /etc/httpd/conf.d/ssl/httpd.csr 申请证书

将这个申请证书发给CA服务器

scp /etc/httpd/conf.d/ssl/httpd.csr 192.168.10.187:/etc/pki/CA

然后CA服务器就可以颁发证书了

openssl ca -in httpd.csr -out certs/httpd.crt -days 300 颁发了一个300天有效期的证书

然后将CA服务器颁发的证书发给web服务器

scp certs/httpd.crt 192.168.10.190:/etc/httpd/conf.d/ssl/

另外CA自己的证书文件也要拷到web服务器

scp cacert.pem 192.168.10.190:/etc/httpd/conf.d/ssl/

此时web服务器上/etc/httpd/conf.d/ssl目录下有4个文件

 

(3)要想做一个加密的网站,自签名证书,只需安装一个模块mod_ssl即可

1.yum install mod_ssl

安装了这个模块,会生成/etc/httpd/conf.d/ssl.conf这个配置文件,接下来要配置这个配置文件

2.在/etc/httpd/conf.d/ssl.conf配置文件指定新的证书路径,私钥文件和上级CA证书的证书路径

vim /etc/httpd/conf.d/ssl.conf

配置完之后然后重新启动httpd服务

service httpd restart

ss -ntl 查看有没有443端口

(4)在/var/www/html下做一个简单的网站界面用来访问

(5)在windos上面做域名解析,C:\Windows\System32\drivers\etc\hosts

(6)用https来访问网站,安装证书

直接访问会有报警错误出现

点击证书错误

点击查看证书,进去点击证书路径,找到上级CA的证书路径,然后安装证书

 

 

 

 

然后再去用https来访问网站,就不会出现任何错误了

posted @ 2018-01-31 11:23  大天使彦  阅读(873)  评论(0编辑  收藏  举报