在系统中如何搭建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 17:41
下一篇 2018-05-19 19:36

相关推荐

  • d

    ““ function fun(){ echo “这是一句非常牛逼的代码”;}fun(); ““

    Linux笔记 2018-07-09
  • ansible的简介和用法

    Ansible  (底层是基于ssh连接的,每次操作其他主机需要输入密码 ,所以首先要实现基于key的公钥验证) 使用ansible: ansible "192.168.60.3" -m shell -a 'ls /root' -k (单个用户在实现基于key的验证前) 安装ansible: yum包的安装:…

    2018-05-28
  • Linux用户和组

    我们知道Linux是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。由于是多用户操作系统,必然要涉及到时管理用户。由于用户访问Linux上的资源比较多,为了方便管理出现的组的概念.将多个用户添加到一个组里,方便管理。 介绍安全3A 资源分派: Authentication:认证 Au…

    Linux笔记 2018-04-08
  • 第十周博客作业

    1、Centos系统下实现httpd-2.2的安装,并分别实现prefork、worker、event等几种工作方式
    2、简述request报文请求方法和状态响应码
    3、详细描述httpd虚拟主机、站点访问控制、基于用户的访问控制、持久链接等应用配置实例

    2018-05-26
  • 网络基础

    计算机网络基础

    2018-05-10
  • linux一些实用小命令

    linux的哲学思想: 1 一切皆文件2 小型,单一用途的程序3 链接程序,共同完成复杂的任务4 避免令人困惑的用户界面5 配置数据存储在文本中1Byte=8bit1k=1024Byte1M=1024k1G=1024M1T=1024G1P 1E 1Z 1Y 1D每个汉字占2个字节(Byte) 每个英文字母占1字节(Byte)在网络配置文件中修改网络开机自启项…

    Linux笔记 2018-03-31