自签名证书及验证

模拟证书涉及的角色

  1. 创建证书目录
    mkdir ~/certs cd ~/certs
  2. 认证机构、网站、浏览器/用户
    mkdir root web user

机构自签名证书生成和发布

  1. 生成私钥
    cd root
    openssl genrsa -des3 -out rootCA.key 2048
  2. 用私钥生成自签证书
    openssl req -x509 -new -nodes -key rootCA.key -out rootCA.cert
  3. 发布证书
    cp rootCA.cert ../web ../user
    模拟证书发布到用户和网站的过程

给网站签署证书

由网站生成证书请求

  1. 网站生成私钥
    cd ../web
    openssl genrsa -des3 -out web.org.key 2048
  2. 去除私钥密码
    openssl rsa -in web.org.key -out web.key
  3. 生成证书签名请求
    openssl req -new -key web.key -out web.csr
  4. 请求证书发给机构
    cp web.csr ../root

机构签署证书

  1. 签署
    cd ../root
    openssl x509 -req -days 365 -in web.csr -CAkey rootCA.key -CA rootCA.cert -CAcreateserial -out web.crt
  2. 签署后的证书 web.crt 发回给网站
    cp web.crt ../web

网站将证书挂到https服务器

这一步请移步参考各https容器配置

用户访问web网站

  1. 模拟用户从网站下载证书
    cd ../user
    cp ../web/web.crt .
  2. 验证网站证书的合法性
    openssl verify -CAfile rootCA.cert -ca-bundle web.crt
    rootCA.cert是机构发布,并得到用户得到信任的根证书,用此证书验证web.crt的合法性。

openssl证书制作详细教程的更多相关文章

  1. openssl 自己制作ssl证书:自己签发免费ssl证书,为nginx生成自签名ssl证书

    server { listen 80; listen 443 ssl; server_name ~^((cloud)|(demo-cloud)|(demo2-cloud)|(approval1))(( ...

  2. Caffe系列3——制作Hdf5数据源详细教程(手把手教你制作Hdf5数据源)

    制作Hdf5数据源详细教程

  3. iOS企业分发证书制作

    自签名证书制作流程 打开终端,输入 openssl genrsa - ,生成名称为ca的秘钥 注:openssl生成的文件皆放在用户文档下(finder菜单栏'前往' - 电脑 -Macintosh ...

  4. Win7 U盘安装Ubuntu16.04 双系统详细教程

    Win7 U盘安装Ubuntu16.04 双系统详细教程 安装主要分为以下几步: 一. 下载Ubuntu 16.04镜像软件: 二. 制作U盘启动盘使用ultraISO: 三. 安装Ubuntu系统: ...

  5. U盘装系统详细教程

    相信有的朋友去电脑城组装电脑的时候,会看见装机人员安装系统不再需要光驱,而插入U盘安装系统,U盘安装系统方便了许多,电脑光驱容易坏,使用寿命短,一般老电脑的光驱都不怎么好使,而U盘就不需要光驱就能安装 ...

  6. [分享] 从定制Win7母盘到封装详细教程 By BILL ( 10月23日补充说明 )

    [分享] 从定制Win7母盘到封装详细教程 By BILL ( 10月23日补充说明 ) billcheung 发表于 2011-10-23 00:07:49 https://www.itsk.com ...

  7. NSIS安装制作基础教程[初级篇], 献给对NSIS有兴趣的初学者

    NSIS安装制作基础教程[初级篇], 献给对NSIS有兴趣的初学者 作者: raindy 来源:http://bbs.hanzify.org/index.php?showtopic=30029 时间: ...

  8. draw9patch超详细教程

    这篇文章是android开发人员的必备知识,内容摘选自网络,友我为大家整理和总结,不求完美,但是有用. 视频教程地址:http://player.youku.com/player.php/sid/XM ...

  9. iOS push全方位解析(二)【译文】"——生成OpenSSL证书,Provisioning Profile

    这是一篇来自raywenderlich的教程,内容翔实!结构简单透彻.讲解循序渐进.文章质量上乘!是一篇难的的博文!使用半瓶的英语水平翻译了一下: 1.[iOS push全方位解析](一) push的 ...

随机推荐

  1. WampServer Apache 服务无法启动解决办法

    问题:WampServer 安装后mysql服务可以启动,但Apache服务启动不了(前提是已经安装Apache Server) 解决办法: 1.端口冲突,改Apache里httpd.conf中的端口 ...

  2. vs2012启动网站调试提示 HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容

    启动vs2012调试网站的时候提示: HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容. 最可能的原因: 没有为请求的 URL 配置默认文档,并且没有在服 ...

  3. js 什么是变量的提升?

  4. dataguru(炼数成金)大数据培训基地印象

    dataguru访问地址:http://f.dataguru.cn/?fromuid=99611 课程优惠码:C4B6  这段时间一直在dataguru(炼数成金)上学习<hadoop数据分析平 ...

  5. Java OOP中的字符串篇

    字符串的三大特征: String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 一.定义 查看 API 会发现,String.St ...

  6. 九宝老师微信小程序开发的过程

  7. 解决跑twoBitToFa时出现“/admin/exe/linux.x86_64/twoBitToFa: Permission denied”的问题

    出现这种问题时,一般要加上以下命令: chmod ugo+x ./admin/exe/linux.x86_64/twoBitToFa 运行成功后,再将twobit格式转化为fa格式 ./admin/e ...

  8. ww

    #!bin/python #coding=utf-8 """ Create by he """ import sys import re i ...

  9. Reverse链表 非递归实现

    #include<iostream> struct node{ int payload; node* next; }; void bianli(node* head){ node* ite ...

  10. hibernateTemplate中常用查询方法的使用(原文地址: http://dongruan00.iteye.com/blog/1772311)

    一.find(String queryString); 示例:this.getHibernateTemplate().find("from bean.User"); 返回所有Use ...