热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

CentOS系统web服务启用https

httpshttps:超文本传输安全协议(HypertextTransferProtocolSecure)网景在1994年创建了https

https

 
https:超文本传输安全协议(Hypertext Transfer Protocol Secure)
网景在1994年创建了https
 
https就是使用了ssl/tls协议通信的http
#SSL/TLS当前使用的版本
#SSL:Secure Socket Layer       v3版
#TLS:Transport Layer Security  v1版
SSL/TLS的重要性
#(1) 所有信息都是加密传播,第三方无法窃听。
#(2) 具有校验机制,一旦被篡改,通信双方会立刻发现。
#(3) 配备身份证书,防止身份被冒充。

 

https与http的区别

 
http    文本协议           tcp:80端口   应用层
https   二进制格式的协议   tcp: 443端口  传输层

 

   (1) http事务与加密的https事务

 

        

 

  (2)重要概念知识介绍  

   

    SSL会话

 
ssl握手要完成的工作:
  交换协议版本号
  选择但双方都支持的加密方式
  对两端实现身份验证
  密钥交换
注意:SSL会话基于IP地址进行:不支持在基于FQDN的虚拟主机上实现

 

  X509.3证书格式

 
证书格式的版本号
           证书序列号
           证书签名算法
           证书颁发者
           有效期
           持有者的名称
           持有者的公钥
           CA的ID
           持有者的ID
           其它扩展信息
               基本约束
               证书策略
               密钥的使用限制
           CA签名

  

   PKI (Public Key Infrastructure)

 

   

 
端实体(申请者)
          注册机构(RC)
          签证机构(CA)-->签证机构(CA)
          证书撤消列表(CRL)发布机构
          证书存取库

 

     

  客户端验证服务器证书

   

 
日期检测:证书是否在有效期内
            证书颁发者的可信度:
            证书的签名检测:
            持有者的身份检测:

 

 

 

 

服务器配置https

 

 ( 1)确保mod_ssl模块加载

                  

               如果没有加载该模块则  #yum -y install mod_ssl*  

               

 

      (2) 服务器自建CA (自我成为CA签发者)

             

              创建服务器自己的私钥  

 

 
#cd /etc/pki/CA  进入CA目录
#(umask 077;openssl genrsa 2048 > private/cakey.pem) 创建服务器私钥

      

               

      服务器自我生成CA证书  

 

 
#openssl req -new -x509 -key /private/cakey.pem -out cacert.pem -days 3655

      

 

       创建index.txt (索引文件数据库),serial(签证编号)

 

 
#touch index.txt serial crlnumber
# echo 01 > serial

 

  ( 3 ) 客户端申请CA 我们同时使用服务器做客户端

         

       

    1、生成客户端自己的私钥 httpd.key        

 
#  cd /etc/httpd     
#  (umask 077;openssl genrsa 1024 >httpd.key)

      

    2、客户端生成证书签署请求 httpd.csr          

 
#cd /etc/httpd
#openssl req -new -key httpd.key -out httpd.csr

            

 

  3、 服务器给客户端签署证书 生成 httpd.crt                  

 
#openssl ca  -in httpd.csr -out httpd.crt -days 3665

       

       

   4、查看密钥和证书

       

 ( 4 )编辑配置文件

     1、打开拓展配置文件及mod_socache模块

               

 
# vim /etc/httpd/httpd.conf

       

             

     2、编辑/etc/httpd/extra/httpd-ssl.conf

       设置客户端证书和密钥路径

              

       设置基于ssl的虚拟主机

       

    3 重启httpd服务    

 
#httpd -t  测试配置文件是否有错误
#service httpd restart

 

 

  ( 5 )客户端测试

       https://www.a.com:443

       

    客户端导入CA证书

     

 

 
#把/etc/pki/CA/cacert.pem这个CA证书拷到window上,改名为cacert.crt,安装此证书

    

    客户端重新测试

      https://www.a.com:443

 

      

 

 

 ( 6 )查看证书信息

   

   

 

  ( 7 )linux客户端测试    

 

 
#openssl s_client -quiet -connect 172.16.251.183:443 -CAfile /etc/pki/CA/cacert.pem

    

     

 

有瑕疵,请及时指出~

本文出自 “西风瘦猪” 博客,请务必保留此出处http://jungege.blog.51cto.com/4102814/1393008


推荐阅读
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 生成对抗式网络GAN及其衍生CGAN、DCGAN、WGAN、LSGAN、BEGAN介绍
    一、GAN原理介绍学习GAN的第一篇论文当然由是IanGoodfellow于2014年发表的GenerativeAdversarialNetworks(论文下载链接arxiv:[h ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 在Kubernetes上部署JupyterHub的步骤和实验依赖
    本文介绍了在Kubernetes上部署JupyterHub的步骤和实验所需的依赖,包括安装Docker和K8s,使用kubeadm进行安装,以及更新下载的镜像等。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 无损压缩算法专题——LZSS算法实现
    本文介绍了基于无损压缩算法专题的LZSS算法实现。通过Python和C两种语言的代码实现了对任意文件的压缩和解压功能。详细介绍了LZSS算法的原理和实现过程,以及代码中的注释。 ... [详细]
  • 本文介绍了数模国赛的报名参加方法,包括学校报名和自己报名的途径。同时给出了建模竞赛的建议,重在历练的同时掌握方法以及弥补自己的短板。此外,还分享了论文的结构和模型求解部分的注意事项,包括数学命题的表述规范和计算方法的原理等。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
author-avatar
史玥Zaira_717
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有