数字证书:
第三方机构使用一种安全的方式把公钥分发出去
证书格式:x509,pkcs家族
x509格式:
公钥和有效期限:
持有者的个人合法身份信息;(主机名,域名)
证书的使用方式
CA的信息
CA的数字签名 谁给CA发证:自签署证书
用户
.生成一对密钥
.把所需信息和公钥按固定格式制作成证书申请(把公钥给CA签署) CA机构
.自签证书,生成密钥对
.签署证书
.传给用户
.维护吊销列表(是否过期)
OpenCA(大规模应用) 用openssl实现私有(自建)CA
配置文件/etc/pki/tls/openssl.cnf
命令:
谁给CA发证:自签署证书

CA服务器端:
用openssl实现私有CA:
配置文件:/etc/pki/tls/openssl.cnf
    
     [root@k8s1 CA]# cd /etc/pki/CA 生成密钥对儿,默认生成公钥和私钥 cakey.pem是私钥:
# (umask ; openssl genrsa -out private/cakey.pem ) 如果想查看公钥,公钥是从私钥中提取出来的,非必要提取公钥:
# openssl rsa -in private/cakey.pem -pubout -text -noout 生成自签证书:
# openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days countrCountry Name 国家
State or Province Name 州或者省的名字
Locality Name 所在的城市
Organization Name 所在的公司
Organizational Unit Name 所在的部门
Common Name https访问的地址
    配置文件:/etc/pki/tls/openssl.cnf
       

自签证书,openssl.conf 配置文件,无法修改Common Name(https://ca.cinyi.com),和email,需要手动修改。

     
        创建需要的文件:
     # cd /etc/pki/CA
# touch index.txt serial crlnumber 给签发的客户端编号
#echo > serial 客户端: 用openssl实现证书申请: 在主机上生成密钥,保存至应用此证书的服务的配置文件目录下, 例如:
# mkdir /etc/httpd/ssl
# cd /etc/httpd/ssl
# (umask ; openssl genrsa -out httpd.key ) 生成证书签署请求(输入的字符country name,State or Province Name, Organization Name 必须和服务CA端相同,否则
     CA签署不通过):
# openssl req -new -key httpd.key -out httpd.csr
        将请求文件发往CA;
       # scp httpd.csr CA服务器端:/tmp/
CA服务器端:
    CA签署证书:
签署:
# openssl ca -in /tmp/192.168.20.230.csr -out /tmp/192.168.20.230.crt -days 将证书传回请求者,可以放置到nginx 配置文件下,形成https访问
# scp /tmp/192.168.20.230.crt 192.168.20.230:/tmp/下, 吊销证书:
# openssl ca -revoke /path/to/somefile.crt

openssl生成证书的更多相关文章

  1. CentOS6系统openssl生成证书和自签证书

    CentOS6系统openssl生成证书和自签证书的过程,记录一下,本文基于CentOS 6 64bit.$ yum install openssl openssl-devel 1,生成服务器端的私钥 ...

  2. 使用OpenSSL生成证书

    使用OpenSSL生成证书 下载安装openssl,进入/bin/下面,执行命令(把ssl目录下的openssl.cnf 拷贝到bin目录下)1.首先要生成服务器端的私钥(key文件):openssl ...

  3. 如何利用OpenSSL生成证书

    此文已由作者赵斌授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.前言 最近为了测试内容分发网络(Content Delivery Network,简称 CDN)添加的新功 ...

  4. [转帖] ./demoCA/newcerts: No such file or directory openssl 生成证书时问题的解决.

    接上面一篇blog 发现openssl 生成server.crt 时有问题. 找了一个网站处理了一下: http://blog.sina.com.cn/s/blog_49f8dc400100tznt. ...

  5. 使用 openssl 生成证书

    一.openssl 简介 目前最流行的 SSL 密码库工具官网:https://www.openssl.org/source/ 构成部分 密码算法库 密钥和证书封装管理功能 SSL通信API接口 用途 ...

  6. PHP通过OpenSSL生成证书、密钥并且加密解密数据,以及公钥,私钥和数字签名的理解

    一.公钥加密假设一下,我找了两个数字,一个是1,一个是2.我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥. 我有一个文件,不能让别人看,我就用1加密了.别人找到了这个文 ...

  7. openssl 生成证书基本原理

    摘自:http://blog.csdn.net/oldmtn/article/details/52208747 1. 基本原理 公司一个项目要进行交易数据传输,因为这个项目银行那边也是刚刚开始启动,所 ...

  8. centos7 openssl 生成证书给自己使用

    Step1: centos7 系统自己生成证书 给自己签发不安全的域名证书 openssl genrsa - #生成ca根秘钥 是长度 openssl req - -key ca.key -out c ...

  9. [k8s]通过openssl生成证书

    证书认证原理: http://www.cnblogs.com/iiiiher/p/7873737.html [root@m1 ssl]# cat master_ssl.cnf [req] req_ex ...

  10. openssl 生成证书

    nginx生成证书,一共四步 1) 生成RSA私钥 (会要求输入至少4位密码)# openssl genrsa -des3 -out private.key 2048 # 2) 根据已生成的RSA私钥 ...

随机推荐

  1. Spring系列之——spring security

    1 搭建springboot 2 配置pom依赖(springboot版本为2.1.3) <dependency> <groupId>org.springframework.b ...

  2. before(),after(),prepend(),append()等新DOM方法简介

    一.DOM API也在不断升级 web前端标准一直在不断升级,比方说,说了很多年的HTML5.CSS3,以及天天见的ES6. 然后,似乎就没有然后了.实际上,除了HTML5/CSS3/ES6+,关于D ...

  3. js小练习

    1.题目:某班的成绩出来了,现在老师要把班级的成绩打印出来. 效果如下:xxx年xx月x日  星期x--班级总分为:81 格式要求:1.显示打印的日期.格式为类似“xxxx年xx月xx日 星期x”的当 ...

  4. springboot中使用druid和监控配置

    如果想要监控自己的项目的访问情况及查看配置信息,druid是一个很好的选择,可能你会问druid是什么?有什么用?优点是什么? Druid简介 Druid是阿里巴巴开源的数据库连接池,号称是Java语 ...

  5. React—Native开发之原生模块向JavaScript发送事件

    首先,由RN中文网关于原生模块(Android)的介绍可以看到,RN前端与原生模块之 间通信,主要有三种方法: (1)使用回调函数Callback,它提供了一个函数来把返回值传回给JavaScript ...

  6. 实现ListView的加载更多的效果,如何将按钮布局到始终在ListView的最后一行

    实现方式一:在代码中实现: 1,在一个布局中定义一个Button,在活动中加载Button的父布局, 例如:View bottomView = getLayoutInflater().inflate( ...

  7. JAVA 分布式 - 分布式介绍

    什么是分布式系统? 要理解分布式系统,主要需要明白一下2个方面: 1.分布式系统一定是由多个节点组成的系统. 其中,节点指的是计算机服务器,而且这些节点一般不是孤立的,而是互通的. 2.这些连通的节点 ...

  8. 如何在前端项目中引用bootstrap less?

    在基于bootstrap css框架的前端项目开发中,如果有grunt build系统,那么工作流是:客制化less,在less中定义自己的 CSS,同时可以随意引用bootstrap中预定义好的cs ...

  9. Oracle EBS AP银行显示不全

  10. VC++下使用ADO操作数据库

    VC++下使用ADO操作数据库主要要用到 _ConnectionPtr,_CommandPtr,_RecordsetPtr三个ADO对象指针,我查找了相关资料,发现网上源码很多,但是都相对凌乱,于是自 ...