Linux

26.使用ssl证书来加密Apache网站

2018-05-14  本文已影响0人  扶桑啊啊

本文记录如何为web网站服务器加密,为服务器安装SSL证书,以后使用https协议来访问网站

首先我们需要三台主机,分别作为网站服务器,证书服务器CA,和客户机

我这里用一台地址为192.168.252.130的虚拟机作为证书服务器CA,

一台192.168.252.128的虚拟机作为网站服务器,需安装Apache

用本机宿主机作为客户机。

一、在CA上生成自签署证书

cd /etc/pki/CA

(umask 077;openssl genrsa -out private/cakey.pem 2018)  //设置私钥cakey.pem的权限为700

 vim /etc/pki/tls/openssl.cnf  //配置证书服务器信息

cd /etc/pki/CA

cd private/

openssl req -new -x509 -key cakey.pem -out cacert.pem //利用私钥生成自签署证书

证书服务器配置第一步结束,现在配置网站服务器


二、在网站服务器生成证书申请文件

查看系统中安装openssl包的情况

在Apache目录下创建ssl,作为ssl证书的目录,用来保存证书和证书申请

生成网站服务器的私钥

发起证书申请,填写刚刚在CA建立的信息,表示申请本台证书服务器,匹配CA服务器填写的信息

将生成的证书申请发送到证书服务器上。


三、在证书服务器同意申请,并发回证书

在CA目录下创建index.txt和serial用来保存数据信息和序列号

根据发来的证书申请,给它生成一个证书,有效期一年(比对申请人信息),再发回到网站服务器。


四、配置网站服务器信息

vim /usr/local/apache2/conf/httpd.conf  //修改Apache主配置文件来开启ssl服务

vim /usr/local/apache2/conf/extra/httpd-ssl.conf  //修改ssl配置文件,网站根目录,域名,指定证书文件SSLCeryificateFile和指定密钥文件SSLCertificateKeyFile


五、配置结束,重启Apache服务,检查主配置文件有没有问题

报错1:

解决1:listen下没有写端口,填443

报错2:

解决2:缺少mod_ssl模块,安装后在Apache主配置文件里加上这个模块

yum -y install mod_ssl

vim /usr/local/apache2/conf/httpd.conf

报错3:

解决3:在主配置文件里找到了这个shmcb模块,只是没有开启,将其开启

成功。


六、用第三方客户机来访问加密后的网站

上一篇下一篇

猜你喜欢

热点阅读