创建私有CA

 

什么是CA

  CA(Certificate Authority)证书颁发机构主要负责证书的颁发、管理以及归档和吊销。证书内包含了拥有证书者的姓名、地址、电子邮件帐号、公钥、证书有效期、发放证书的CA、CA的数字签名等信息。证书主要有三大功能:加密、签名、身份验证。

搭建私有CA

一、搭建CA服务器

1、生成密钥

ca.png

  • ( ):表示此命令在子进程中运行,其目的是为了不改变当前Shell中的umask值

  • genrsa:生成私钥

  • -out:私钥的存放路径,cakey.pem:为密钥名,与配置文件中保持一致

  • 4096:密钥长度,默认为1024

2、生成自签证书

ca1.png

  • req:生成证书签署请求

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

  • -x509:生成自签格式证书,专用于创建私有CA时

  • -key:生成请求时用到的使用文件路径

  • -out:生成的请求文件路径,如果自签操作将直接生成签署过的证书

  • -days:证书的有效时长,单位是day

3、为CA提供所需的目录及文件

    ~]# mkdir -pv /etc/pki/CA/{certs,crl,newcerts}

    ~]# touch /etc/pki/CA/{serial,index.txt}

    ~]# echo 01 > /etc/pki/CA/serial
  • index.txt:索引文件,用于匹配证书编号

  • serial:证书序列号文件,只在首次生成证书时赋值

二、节点向CA请求签署证书

1、用到证书的主机生成私钥

ca2.png

2、生成证书签署请求

ca3.png

3、将请求通过可靠方式发送给CA主机

ca4.png

三、签署证书

1、在CA服务器上签署证书

ca5.png

2、发送给请求者

ca6.png

四、吊销证书

(一)、节点请求吊销
1、客户端获取要吊销的证书的serial(在使用证书的主机执行)

ca7.png

  • x509:证书格式

  • -in:要吊销的证书

  • -noout:不输出额外信息

  • -serial:显示序列号

  • -subject:显示subject信息

(二)、CA验证信息
1、节点提交的serial和subject信息来验证与index.txt文件中的信息是否一致

ca8.png

2、吊销证书

ca9.png

  • -revoke:删除证书

3、生成吊销证书的吊销编号(第一次吊销证书时执行)

aa.png

4、更新吊销证书列表

ca10.png

  • -gencrl:生成证书吊销列表

5、查看crl文件

ca11.png

  • -text:以文本形式显示

 

原创文章,作者:641348038@qq.com,如若转载,请注明出处:http://www.178linux.com/67722

(0)
641348038@qq.com641348038@qq.com
上一篇 2017-02-07
下一篇 2017-02-07

相关推荐

  • shell,系统启动和内核管理

    shell中的for和while循环,Linux的组成,系统启动的步骤,以及内核的管理

    2017-12-21
  • ssh基于密钥的认证及实现

    ssh登录认证方式介绍 大致有以下两种 基于口令的认证这种认证方式就是通过ssh指令以指定用户名、指定端口等信息后,待连接建立完成,需要输入用户名对应的口令来完成认证。一般形如: [root@localhost ~]# ssh -l lantian 192.168.1.201  &nbsp…

    Linux干货 2017-01-05
  • 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可 who |cut -d ' ' -f1 |sort|uniq 2、取出最后登录到当前系统的用户的相关信息 last|head -1 3、取出当前系统上被用户当作其默认shell的最…

    Linux干货 2016-12-26
  • 马哥教育网络班22期+第2周课程练习

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及相关示例演示。     文件管理类命令有:cp,mv,rm     1. cp:copy           使用方法:      &nbs…

    Linux干货 2016-08-22
  • CentOS 7 安装 mysql-5.7.14

    在centos7上安装 路上遇过各种坑 把在centos7正确安装mysql-5.7.14分享一下 1. CentOs7 默认的数据库为MariaDB,先卸载MariaDB,否则安装mysql,引起冲突 rpm -qa mariadb rpm -e –nodeps mariadb 2. 准备好工作环境 mkdir /application&nbs…

    Linux干货 2017-05-07

评论列表(1条)

  • luoweiro
    luoweiro 2017-02-23 07:26

    步骤详细,如果有关于加密相关的原理介绍会更好,加油。