Apache + SSL 加密

Apache + SSL 实现加密

1、环境

(1)Linux:linux系统

(2)Apache:Apache/2.4.6

2、安装Apache并添加支持SSL的模块

        Apache安装过程中需要添加支持SSL的模块,可以通过安装openssl工具,使用yum工具自动编译安装SSL模块和openssl环境工具。

        命令:yum install openssl mod_ssl

        这个命令会自动安装下载和当前apache环境相匹配的openssl安装包,优点是可以自动解决依赖关系,方便快捷。但是需要系统中有yum工具而且需要联网,如果apache版本比较低,也会自动安装到一些版本比较低的openssl包,无法手动选择具体的openssl安装包。

        安装之后,在Apache的httpd.conf文件中添加对SSL模块的引用:

        IncludeOptional conf.d/*.conf

   LoadModule ssl_module modules/mod_ssl.so

3、生成证书以及私钥文件


(1)服务器证书:server.crt

(2)CA证书:ca.crt

(3)私钥文件:server.key

注意:将生成的文件,放到Apache的conf文件夹下

4、配置加密

        当Apache支持加密后,会在conf.d文件夹下出现ssl.conf文件,可以通过配置该文件来实现SSL机密。

   <VirtualHost *:443>

     ......

     SSLEngine on

     SSLProxyEngine on

 

     SSLProtocol all -SSLv2 -SSLv3

     SSLHonorCipherOrder on

     SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM

     SSLCertificateFile /etc/httpd/conf/server.crt

     SSLCertificateKeyFile /etc/httpd/conf/server.key

     SSLCertificateChainFile /etc/httpd/conf/ca.crt

     ......

   </VirtualHost>

5、验证证书是否安装成功

   命令:openssl s_client -connect 127.0.0.1:443

Apache + SSL 加密

6、打开外网443端口

(1)查看443端口是否打开,命令:netstat -an|grep 443

 

Apache + SSL 加密   

(2)打开443端口

   firewall-cmd --zone=public --add-port=443/tcp --permanent

   firewall-cmd --reload

 

相关推荐