在系统中如何搭建CA

详解

504f9caeb97138e89d82983e82373b9a

系统中搭建CA

CA的配置文件

vim /etc/pki/tls/openssl.cnf

默认 CA_default  (可建多个)

[ CA_default ]

dir             = /etc/pki/CA      # Where everything is kept  CA的工作目录

certs           = $dir/certs        # Where the issued certs are kept 存放证书的地方

crl_dir          = $dir/crl          # Where the issued crl are kept   证书吊销列表

database        = $dir/index.txt    # database index file.  存放证书信息的数据库,需要手工创建

new_certs_dir   = $dir/newcerts     # default place for new certs. 新证书默认放此文件夹

certificate     = $dir/cacert.pem     # The CA certificate   CA的证书文件

serial          = $dir/serial      # The current serial number 下一个要颁发的证书序列号(16进制数)

crlnumber       = $dir/crlnumber   # the current crl number下一个要吊销证书的序列号

crl             = $dir/crl.pem         # The current CRL   证书吊销列表

private_key     = $dir/private/cakey.pem # The private key    存放私钥

RANDFILE        = $dir/private/.rand   # private random number file 生成随机数

x509_extensions = usr_cert            # The extentions to add to the cert  不关键

 

policy          = policy_match   策略匹配

[ policy_match ]

countryName             = match   国家必须匹配

stateOrProvinceName      = match    省

organizationName         = match    公司名

organizationalUnitName    = optional  (可选的)

commonName            = supplied   必须提供不能空 一般为网站名域名

emailAddress             = optional    邮箱可写可不写

 

实验:向CA申请证书

进入到CA文件夹

1.建立RootCA

  • 生成私钥匙

(umask 077; openssl genrsa –out private/cakey.pem 4096)

      2)自签名证书

       openssl req -new -x509 -key private/cakey.pem -out cacert.pem -deys 3650

-new   建一个新申请

-x509  表示自签名 不加表示是普通证书

-key: 生成请求时用到的私钥文件

-days n:证书的有效期限

-out / PATH/TO/SOMECERTFILE : 证书的保存路径

CN 表示中国

beijing 省,市

查看证书里的内容 openssl x509 -in cacert.pem -noout -text

也可以传到windows里看,改成cer或crt后缀

2.用户或服务器

      1)生成私钥

(umask 077; openssl genrsa –out test.key –des 2048)

      2)生成证书申请文件

         openssl req -new -key text.pem -out text.csr

.csr 申请证书文件后缀

部门可不一致前面要一致

      3)将申请文件发给CA

         scp app.csr 192.168.30.111:/etc/pki/CA

注意:默认国家,省,公司名称三项必须和CA一致

3 .CA颁发证书

      touch  /index.txt  (不创建会提示错误)

echo 0F(可自己指定) >serial

openssl ca -in app.csr -out certs/app.crt -days 100

4.证书发送客户端

         scp certs/app.crt 192.168.30.6:/date (传回给申请者)

5.应用软件使证书

 

一个证书申请,可以申请几个证书

默认不允许

需要改这个文件 vim index.txt.attr

证书管理

查看证书中的信息

openssl x509 -in  /PATH/FROM/CERT_FILE  -noout -text|issuer|subject|serial|dates

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/编号 .pem、

R表示已吊销

V 表示在使用

指定第一个吊销证书的编号 ,

注意:第一次更新证书吊销列表前,才需要执行

echo 01 > /etc/pki/CA/crlnumber

更新证书吊销列表

openssl ca -gencrl -out /etc/pki/CA/crl.pem

查看crl文件:

openssl crl -in /etc/pki/CA/crl.pem -noout -text

其实有脚本可以做这个事

rpm -qp –s cripts /misc/cd/Packages/mod_ssl-2.4.6-67.el7.centos.x86_64.rpm

 

 

 

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

(0)
天策天策
上一篇 2018-05-19
下一篇 2018-05-19

相关推荐

  • 变量的理解

    有点绕多动动手就好了

    Linux笔记 2018-04-15
  • 作业管理(任务计划)

    任务计划就好比我们的闹钟一样,到了指定的时间就该去做对应的事情。 任务计划分为两类: 一次性的任务计划:只执行一次就结束 周期性的任务计划:每隔一定的周期去做相同的事情 at命令就是专门用来处理一次性的计划任务 batch也是处理一次性的计划任务但是它是由系统自行选择空闲时间去执行此处指定的任务(不常用) crontab可以根据定义的周期信息,循环的去做一些…

    Linux笔记 2018-05-05
  • shell进阶函数及数组

    ①函数
    ②数组
    ③字符串切片
    ④变量高级进阶
    ⑤expect工具

    Linux笔记 2018-05-12
  • 正则表达式及vim使用方法

    正则表达式(正则表达式匹配的是文本内容中的字符串,通倍符匹配的是文件名)REGEXP:由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能程序支持:grep,sed,awk,vim, less,nginx,varnish等分两类:不同的命令支持不同的正则表达式基本正则表达式:BRE扩展正则表达式:EREgre…

    Linux笔记 2018-04-08
  • shell脚本基础及编程练习

    shell基础语法

    Linux笔记 2018-04-15
  • Linux系统总结——命令篇

    主分区:1-4一块硬盘最多4个,不可分小区 可以用来启动OS(系统分区)

    扩展分区:1-4一块硬盘做多只有一个,+主分区最多4个,不能创建文件系统,可以创建逻辑分区。

    逻辑驱动器(分区):可以创建文件系统,存放数据。

    2018-03-28