数字证书:
第三方机构使用一种安全的方式把公钥分发出去
证书格式: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. Oracle用户权限及死锁

    Oracle用户权限表 oracle数据库中涉及到用户权限的三个表,dba_users,all_users,user_users有什么区别 dba_开头的是查全库所有的,all_开头的是查当前用户可以 ...

  2. 创建vue项目 webpack+vue

    # 全局安装 vue-cli $ npm install -g vue-cli # 创建一个基于 "webpack" 模板的新项目 根据提示填写项目信息 && 对项 ...

  3. JS中Date.parse()和Date.UTC()返回值不一致

    Date.parse() 方法解析一个表示某个日期的字符串,并返回从1970-1-1 00:00:00 UTC 到该日期对象(该日期对象的UTC时间)的毫秒数,如果该字符串无法识别,或者一些情况下,包 ...

  4. 【linux】扒站命令之利用wget快速扒站利用wget快速扒站

    在Linux下,通过一个命令就可以把整个站相关的文件全部下载下来. wget -r -p -k -np 参数说明: -r : 递归下载 -p : 下载所有用于显示 HTML 页面的图片之类的元素 -k ...

  5. ERP 实施执行力提高的障碍,看看你中了几招?

    据统计,在国内 ERP 实施的成功率非常低,成功实施实现系统集成的只占10%-20%:没有实现系统集成或实现部分集成的只有30%-40%:而失败的却占50%,并且在实施成功的10%-20%中大多为外资 ...

  6. 如何调试flutter应用

    The Dart Analyzer 这个工具帮助你分析代码,发现可能的错误. 运行命令行 终端进入flutter工程所在目录,执行flutter analyze 使用IntelliJ IDEA Dar ...

  7. Path2.0中绚丽的的旋转菜单

    我们看一下实现的效果图: 在上图中,我将菜单弹出的效果设置成直线型,最终的弹出或汇总点在下面的红色按钮中. 它的实现原理是设置动画的同时并利用动画中的插入器(interpolator)来实现弹力.主要 ...

  8. Attack Top Chunk之 bcloud

    前言 这是 bctf 2016 的题,链接 https://github.com/ctfs/write-ups-2016/tree/master/bctf-2016/exploit/bcloud-20 ...

  9. Android 时间轴的实现

    时间轴 时间轴,顾名思义就是将发生的事件按照时间顺序罗列起来,给用户带来一种更加直观的体验.京东和淘宝的物流顺序就是一个时间轴(如图),想必大家都不陌生. 时间轴的初探 初次见到这种UI,感觉整个布局 ...

  10. BlockingQueue介绍及使用

    1.BlockingQueue队列和平常队列一样都可以用来作为存储数据的容器,但有时候在线程当中 涉及到数据存储的时候就会出现问题,而BlockingQueue是空的话,如果一个线程要从Blockin ...