author:JevonWei

版权声明:原创作品


在httpd安装完成的基础上实现https加密

  • 安装mod_ssl软件包

    yum -y install mod_ssl

    http -M 显示mod_ssl模块已加载

    service httpd restart

CA服务端搭建CA证书

openssl配置文件/etc/pki/tls/openssl.cnf
  • /etc/pki/tls/openssl.cnf

    CA相关文件都在/etc/pki/CA/目录下

    /etc/pki/CA/cert 存放发布证书

    /etc/pki/CA/crl 证书吊销列表

    /etc/pki/CA/index.txt 证书编号等索引数据库文件

    /etc/pki/CA/newcerts 新颁发证书存放目录

    /etc/pki/CA/cacert.pem CA服务端的自签名证书

    /etc/pki/CA/serial 下一个将要颁发证书的序列号

    /etc/pki/CA/crlnumber 吊销证书的编号

    /etc/pki/CA/crl.pem 吊销证书存放的文件

    /etc/pki/CA/private/cakey.pem 证书的私钥文件

  • CA服务端创建所需要的文件

    [root@danran app]# touch /etc/pki/CA/index.txt 生成证书的索引数据库文件

    [root@danran app]# echo 01 > /etc/pki/CA/serial 指定第一个颁发证书的序列号,序列号必须为两位,且序列号是十六进制存储

  • CA服务端生成自签名证书

    (umask 066;openssl genrsa -out private/cakey.pem 1024) \创建秘钥

    生成自签名证书

    openssl req -new -x509 –key /etc/pki/CA/private/cakey.pem -days 7300 -out /etc/pki/CA/cacert.pem

    req 请求

    -new:生成新证书签署请求

    -x509:专用于CA生成自签证书

    -key:生成请求时用到的私钥文件

    -days n:证书的有效期限

    -out 输出CA自签名文件

  • http服务端申请生成证书申请文件

    mkdir /etc/httpd/conf.d/ssl \存放http服务的证书文件

    (umask 066;openssl genrsa -out /etc/httpd/conf.d/ssl/httpd.key 1024) \生成私钥文件

    openssl req -new -key /etc/httpd/conf.d/ssl/httpd.key -out /etc/httpd/conf.d/ssl/httpd.csr \生成证书申请文件

scp /etc/httpd/conf.d/ssl/httpd.csr 192.168.198.128:/etc/pki/CA \\将证书请求文件传送给CA服务端申请证书
  • CA服务端为http服务颁发证书

    openssl ca -in /etc/pki/CA/httpd.csr -out /etc/pki/CA/certs/httpd.crt -days 10

    scp /etc/pki/CA/certs/httpd.crt 192.168.198.136:/etc/httpd/conf.d/ssl \将颁发的证书发送给http服务端配置

    scp /etc/pki/CA/cacert.pem 192.168.198.136:/etc/httpd/conf.d/ssl \将ca服务端的CA证书也发送给httpd的服务端

  • http服务端配置httpd支持使用ssl

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

      SSLCertificateFile /etc/httpd/conf.d/ssl/httpd.crt  \\证书文件路径
    SSLCertificateKeyFile /etc/httpd/conf.d/ssl/httpd.key \\证书申请秘钥文件
    SSLCACertificateFile /etc/httpd/conf.d/ssl/cacert.pem \\CA服务端的CA证书

httpd服务的搭建参考

http://119.23.52.191/httpd常用配置/

http://www.cnblogs.com/JevonWei/p/7275844.html

CA证书的创建参考

http://119.23.52.191/实现ca证书创建及客户端申请证书/

https加密实现的更多相关文章

  1. Nginx采用https加密访问后出现的问题

    线上的一个网站运行了一段时间,应领导要求,将其访问方式更改为https加密方式.更改为https后,网站访问正常,但网站注册功能不能正常使用了! 经过排查,是nginx配置里结合php部分漏洞了一个参 ...

  2. 百度HTTPS加密搜索有什么用?

    前段时间,我曾提到百度支持移动端HTTPS SSL加密搜索,用以保护用户隐私.最近,百度开始支持PC端HTTPS SSL加密搜索,现在可以启用 https://www.baidu.com 搜索.我很少 ...

  3. HTTPS加密流程超详解(一)前期准备

    0.前言 前一阵子想写一个HTTPS的嗅探工具,之前只是大致了解SSL/TLS协议的加密流程,真正上起手来一步一步分析发现还是有点复杂的,于是我参考了wireshark的源码以及各种RFC,弄清楚了S ...

  4. HTTPS加密那点事-对称、非对称加密、数字证书

    转自:[漫画]https 加密那点事 首先,HTTP协议的缺点:没有对数据进行加密,都是明文传输的.如果要改进这种明文传输的协议,该如何做呢? 对称加密: 在每次发送真实数据之前,服务器先生成一把密钥 ...

  5. 部署自建CA颁发证书实现https加密

    理论忽略:百度上很多 需求:自建证书并实现域名的https加密 部署: 在linux机器上执行以下命令生成私钥 mkdir -p /opt/ssl-cert cd  /opt/ssl-cert 1.# ...

  6. 免费获取SSL证书/一键安装SSL证书/https加密

    因为我用的是恒创的香港服务器 虽然价格相较于大促的阿里云贵一些,但是有一个有点不用备案... 安装步骤: 1.登录云主机控制面板, 在 其他管理 中找到并进入 SSL证书 设置. 注意:如拥有多个域名 ...

  7. https 加密、http2.0、keep-alive

    原文地址:https://ainyi.com/44 HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议 ...

  8. Apache强制WWW跳转以及强制HTTPS加密跳转的方法

    一般我会较多的使用WORDPRESS程序,其在安装的时候我们如果直接用WWW打开,或者在后台设置WWW域名则默认会强制301指向WWW站点域名.而这里有使用ZBLOG或者TYPECHO等其他博客程序则 ...

  9. https加密过程

    https加密完整过程 step1: “客户”向服务端发送一个通信请求 “客户”->“服务器”:你好 step2: “服务器”向客户发送自己的数字证书.证书中有一个公钥用来加密信息,私钥由“服务 ...

随机推荐

  1. c3p0数据库连接池+mysql数据库基本使用方法

           一般我们在项目中操作数据库时,都是每次需要操作数据库就建立一个连接,操作完成后释放连接.因为jdbc没有保持连接的能力,一旦超过一定时间没有使用(大约几百毫秒), 连接就会被自动释放掉. ...

  2. 深入浅出数据结构C语言版(12)——从二分查找到二叉树

    在很多有关数据结构和算法的书籍或文章中,作者往往是介绍完了什么是树后就直入主题的谈什么是二叉树balabala的.但我今天决定不按这个套路来.我个人觉得,一个东西或者说一种技术存在总该有一定的道理,不 ...

  3. R语言 write.xlsx() 写入同一excel,及同一sheet注意

    write.xlsx(x, file, sheetName="Sheet1", col.names=TRUE, row.names=TRUE, append=FALSE, show ...

  4. Python操作Zip文件

    Python操作Zip文件 需要使用到zipfile模块 读取Zip文件 随便一个zip文件,我这里用了bb.zip,就是一个文件夹bb,里面有个文件aa.txt. import zipfile # ...

  5. Mysql元数据生成Hive建表语句注释脚本

    在将数据从Mysql 等其他关系型数据库 抽取到Hive 表中时,需要同步mysql表中的注释,以下脚本可以生成hive表字段注释修改语句. 注:其他关系型数据库如:oracle 可以通过相同的思路, ...

  6. 7种方法解决移动端Retina屏幕1px边框问题

    在Reina(视网膜)屏幕的手机上,使用CSS设置的1px的边框实际会比视觉稿粗很多.在之前的项目中,UI告诉我说我们移动项目中的边框全部都变粗了,UI把他的设计稿跟我的屏幕截图跟我看,居然真的不一样 ...

  7. this和super关键字在构造器中放置第一行的原因

    this()在第一行的原因就是: 为保证父类对象初始化的唯一性. 我们假设一种情况, 类B是类A的子类, 如果this()可以在构造函数的任意行使用, 那么会出现什么情况呢? 首先程序运行到构造函数B ...

  8. Apache POI 一键上传(导入excel文件到数据库)

    import cn.XXXX.bos.utils.PinYin4jUtils; import org.apache.commons.lang3.StringUtils; // HSSF:操作07版本之 ...

  9. MySQL连接问题【mysql_connect和mysql_pconnect区别】

    --MySQL连接问题[mysql_connect和mysql_pconnect区别] -------------------------------------------------------- ...

  10. leetcode First Bad Version(二分查找)

    You are a product manager and currently leading a team to develop a new product. Unfortunately, the ...