如何搭建CA(向CA申请证书)

系统中搭建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/98925

(0)
李登峰李登峰
上一篇 2018-05-19 19:36
下一篇 2018-05-20 07:40

相关推荐

  • 文本处理三剑客:sed简介

    文本处理三剑客:sed简介 sed是一种流编辑器,处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。 处理过程 sed命令将当前处理的行读入模式空间(pattern space)进行处理,sed在该行上执…

    Linux笔记 2018-04-03
  • CentOS6和5启动流程

    简述过程

    2018-05-20
  • linux 学习6

    1、简述osi七层模型和TCP/IP五层模型 1、 osi七层模型 1、应用层:OSI 参考模型中最靠近用户的一层,为计算机用户提供应用接口,也为用户直接提供各种网络服务。我们常见应用层的网络服务协议有:HTTP,HTTPS,FTP,POP3、SMTP等。 2、表示层:提供各种用于应用层数据的编码和转换功能,确保一个主机的应用层发送的数据能被另一个主机的应用…

    Linux笔记 2018-07-28
  • shell回顾

    测试基础知识

    2018-05-17
  • lamp架构搭建

    lamp架构搭建(yum) 环境:一台主机,centos7.5   lamp安装 yum -y install httpd php-fpm php-mysql mariadb-server 启动php-fpm服务 systemctl start php-fpm 配置httpd生成配置文件,提示http,php-fpm服务在本地 vim /etc/h…

    2018-06-25