Linux创建CA和申请认证

Linux创建CA和申请认证

背景:

在学习Linux运维中,学习到了CA的创建和申请认证,为了加深对CA的理解,这里做一个创建CA和申请认证的实验并记录下来供以后回顾。

介绍:

什么是CA认证?

  • 电子商务认证授权机构(CA, Certificate Authority),也称为电子商务认证中心,是负责发放和管理数字证书的权威机构,并作为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任。
  • CA中心为每个使用公开密钥的用户发放一个数字证书,数字证书的作用是证明证书中列出的用户合法拥有证书中列出的公开密钥。CA机构的数字签名使得攻击者不能伪造和篡改证书。在SET交易中,CA不仅对持卡人、商户发放证书,还要对获款的银行、网关发放证书。

实验介绍:

  • 在VMware一台虚拟机上创建CA,然后用另一台虚拟机做客户端来申请证书,并在电脑上安装证书

实验:

1、编辑openssl配置文件(可以不用修改,使用默认选项)

命令 vim  /etc/pki/tls/openssl.cnf

在默认配置文件里定义了CA相关目录位置和相关文件位置,还定义了我们使用的策略

1

2

 

 

2、创建需要的文件

 

在创建CA之前我需要先根据配置文件来创建几个文件(实验使用的是默认的配置,没改动)

(1)创建第一个文件命令:touch /etc/pki/CA/index.txt   ;这个文件是用来存放认证的认证数据库,如果不创建会在认证的时候报错,这里可以先创建也可以看到报错信息后在创建

(2)创建第二个文件命令:echo 01 > /etc/pki/CA/serial  ;这里存放认证起始编号;用来表示下一个认证的编号是什么

3、CA自签证书

(1)在生成CA自签证书需要先生成私钥

命令1:cd /etc/pki/CA/ 移动到CA目录下

命令2:(umask 066; openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)  这个小括号是必须要有的

3

(2)生成自签证书

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

req表示申请证书;

-new 表示生成新证书签署请求;

-x509表示是自签证书;

-key后面接的是申请证书用到的私钥;

-days表示证书有效期;

-out 后面接的是证书保存位置 (ps:这里的cacert.pem文件名一定和配置文件一致,下图的文件名就少写了个c,在实验时出错了,不过改下文件名字就好了)

4

在做好自签证书后就可以给其他人签发证书了,先看看CA目录的文件结构,等会儿在签署证书时会发现变化

5

4、用另一台虚拟机来模拟申请证书

步骤:

(1)在申请证书的虚拟机上生成自己的私钥;命令:(umask 066; openssl genrsa -out /etc/pki/tls/private/test.key 2048)  这个小括号是必须要有的

(2)在申请证书的虚拟机上生成证书请求文件;命令:openssl req -new -key /etc/pki/tls/private/test.key
-days 365 -out etc/pki/tls/test.csr  这里写时间是没有用,有效期是签署者给的

6

7

在生成了证书请求文件后要将这个文件传给CA所在虚拟机

8

CA在收到证书请求文件后就可以审核和签署证书;签署证书命令:openssl ca -in /etc/pki/CA/certs/test.csr -out /etc/pki/CA/certs/test.crt -days 3650

9

10

5、安装证书

在签署了证书后就可以将证书发给申请者,申请者就可以使用该证书了。

我们将证书放在windows上来查看信息。

11

12

现在安装根证书,让这个证书被系统识别。

1314

12

下面开始安装根证书

151718192021

到此说明我们CA成功创建和申请证书完成

看看/etc/pki/CA目录结构变化:

22

6、吊销证书

如果你要查看证书信息,命令:openssl ca -status SERIAL   查看指定编号的证书状态

如果你要吊销一个证书

在客户端获取要吊销的证书的编号
openssl x509 -in /PATH/FROM/CERT_FILE -noout -serial -subject
在CA上,根据客户提交的serial与subject信息,对比检验是否与index.txt文件中的信息一致

吊销证书:openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem  (SERIAL是证书编号)

23

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/86750

(3)
657188918657188918
上一篇 2017-09-09 20:39
下一篇 2017-09-09 20:48

相关推荐

  • 马哥教育的第一天

    春天的北京,比想象中的更加温暖,跨越一千三百公里的距离,我来到马哥教育位于北京昌平区的校区,传说中的春寒料峭似乎遗忘了北京,自湖北出门的时候,车外还是淅淅沥沥的小雨,到达北京,迎接我的却是春风拂面熏人醉。 安顿了两天之后,我们三十期的开班典礼在三月二十六号早上的九点钟准时开始,由云珍老师主持,传说中的马哥、王老师、张sir、宗华老师纷纷登台致辞,分别从运维工…

    2018-03-26
  • 笔记四、Linux基础入门-上半部

    前言 直接已经教大家如何创建虚拟机和安装CentOS 操作系统了,那么今天就来开始入门吧。linux对于新手来说并不难,linux的构造 http://www.178linux.com/68853 这篇博客里我已经讲解了,有兴趣最好看一下llinux下每个目录的作用。还有Linux的哲学思想。 这里我就开始介绍了。 一、用户登陆   &n…

    2017-02-23
  • linux 查找过滤及用户和组管理命令的一些事例

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

    Linux干货 2016-10-05
  • 文件查找与压缩

    文件查找与压缩   Locate:非事实查找(数据库查找)     查询系统上预建的文件索引数据库 /var/lib/mlocate/mlocate.db 依赖于事先构建的索引; 索引的构建是在系统较为空闲时自动进行(周期性任务); 管理 员手动更新数据库(updatedb);   工作特点: 查找…

    Linux干货 2016-08-18
  • Linux syslog 系统日志管理

    Linux系统上面,系统可以记录从开机到当前系统上面何时发生了哪些事情,在centos 上表现为rsylog,由三部分组成 1)syslogd:主要记录系统和网络等服务的日志信息 2)klogd:主要记录内核产生的各项信息 3)logretate:主要用来对日志文件进行切割循环记录等 特点: 1)多线程工作 2)支持以TCP,UDP,SSL,TSL,RELP…

    Linux干货 2016-10-24
  • shell脚本实现MD5破解的相关小计

    分享编写shell脚本暴力破解md5的方法 方法一 单个破解法(以10位数为例) #!/bin/bash read -p “please input strings:”string for n in {0..33000} do Md5=`echo $n |md5sum|cut -c 1-10`      …

    Linux干货 2017-03-26