对mod_ssl进行基于模块实现httpd对ssl的支持

  

如果大家在浏览百度,或者谷歌时不难发现,这些网站都实现了全站https, https相对于http而言,由于增加的ssl隧道传输机制,安全性得到了极大的提升,所以全站https将是未来站点的趋势所在,而httpd默认是不支持https的,由于httpd有着强大的模块支持,这里我们通过httpd众多模块中的一个对mod_ssl进行——来实现https。

我们都知道,http是基于文本协议来传输数据的,默认是使用tcp的80端口对外通信的,而https则不同,https基于二进制格式的协议传输、安全性得到了保证,默认使用tcp的443端口来通信。由于ssl会话是基于IP地址进行的,故而不支持在基于FQDN的虚拟主机上实现。

首先需要安对mod_ssl进行装模块:

] #, yum  -y  install  mod_ssl 

生成的文件:

] #, rpm 对mod_ssl进行-ql /etc/httpd/conf.d/ssl.conf ,,,,,,,,,,,,,,,,,,,,,,//配置文件,需要指明我们的证书所在位置,下面要用的到/etc/httpd/conf.modules.d/00-ssl.conf/usr/lib64/httpd/modules/mod_ssl.so/usr/libexec/httpd-ssl-pass-dialog/var/cache/httpd/ssl 

安装完成后需确保模块装载:

] #, httpd  - m
  Loaded 模块:
  ,,,\ \此处省略
  ,ssl_module (共享),,,,//确保此模块已装载
  …,,\ \此处省略

此时启动httpd服务:

), #, systemctl  start  httpd 

确保tcp的80年和443年端口已经监听:

基对mod_ssl进行于模块实现httpd对ssl的支持

要想使用https,服务器需要证书(公钥和私钥),可以在/etc/pki/tls/证书/目录下执行让命令来创建测试证书:

创建私钥:

基对mod_ssl进行于模块实现httpd对ssl的支持

为了私钥的安全性,要把私钥放在系统指定目录:

 cp  auth.key /etc/pki/CA/私人/

创建证书:

基对mod_ssl进行于模块实现httpd对ssl的支持

至此,供实验使用的证书文件已创建完毕,下面修对mod_ssl进行改配置文件来知名我们的证书存放位置:

编辑配置文件:

] #, vim /etc/httpd/conf.d/ssl。参看

并做修改如下:

基对mod_ssl进行于模块实现httpd对ssl的支持

重启httpd服务:

基对mod_ssl进行于模块实现httpd对ssl的支持

查看端口监听情况:

基对mod_ssl进行于模块实现httpd对ssl的支持

把证书文件拷贝到测试主机上:

] #, scp  auth.crt  tony@192.168.1.105: ~/桌面/

基对mod_ssl进行于模块实现httpd对ssl的支持

复制成功后,桌面有个文件身份验证。crt文件,双击导入系统:

基对mod_ssl进行于模块实现httpd对ssl的支持

打开浏览器,输入网址,测试:

基对mod_ssl进行于模块实现httpd对ssl的支持

至此,基于httpd对mod_ssl进行的模块实现https就成功了。

对mod_ssl进行基于模块实现httpd对ssl的支持