目录
在CA上,根据客户提交的serial与subject信息,对比检验是否与index.txt文件中的信息一致,吊销证书
创建私有CA
1、创建CA所需要的文件
#生成证书索引数据库文件
touch /etc/pki/CA/index.txt
#指定第一个颁发证书的序列号
echo 01 > /etc/pki/CA/serial
2、生成CA私钥
cd /etc/pki/CA/
(umask 066; openssl genrsa -out private/cakey.pem 2048)
3、生成CA自签名证书
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out /etc/pki/CA/cacert.pem
选项说明:
-new: 生成新证书签署请求
-x509: 专用于CA生成自签证书
-key: 生成请求时用到的私钥文件
-days n: 证书的有效期限
-out /PATH/TO/SOMECERTFILE: 证书的保存路径
范例:生成自签名证书
[root@CentOS7 ~]# openssl req -utf8 -newkey rsa:1024 -subj "/CN=www.xiaobai.org" -keyout app.key -nodes -x509 -out app.crt
Generating a 1024 bit RSA private key
.......................++++++
.......................++++++
writing new private key to 'app.key'
#查看证书
[root@CentOS7 ~]# openssl x509 -in app.crt -noout -text
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
f5:42:e7:5a:cd:65:17:46
Signature Algorithm: sha256WithRSAEncryption
Issuer: CN=www.xiaobai.org
Validity
Not Before: Jun 19 06:48:56 2023 GMT
Not After : Jul 19 06:48:56 2023 GMT
Subject: CN=www.xiaobai.org
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (1024 bit)
Modulus:
·····
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Key Identifier:
36:BD:AE:68:3D:D8:48:09:7B:8D:B7:50:51:F8:0A:4A:92:F5:91:18
X509v3 Authority Key Identifier:
keyid:36:BD:AE:68:3D:D8:48:09:7B:8D:B7:50:51:F8:0A:4A:92:F5:91:18
X509v3 Basic Constraints:
CA:TRUE
Signature Algorithm: sha256WithRSAEncryption
·····
[root@CentOS7 ~]#
申请证书并颁发证书
1、为需要使用证书的主机生成私钥
(umask 066;openssl genrsa -out data/test.key 2048)
2、为需要使用证书的主机生成证书申请文件
openssl req -new -key data/test.key -out data/test.csr
3、在CA签署证书并将证书颁发给请求者
openssl ca -in data/test.csr -out /etc/pki/CA/certs/test.crt -days 100
注意:默认要求国家,省,公司名称三项必须和CA一致,否则会报错
在 OpenSSL 中,要求证书申请中的组织信息(Organization)必须与 CA(证书颁发机构)的证书中的组织信息一致。这通常包括国家(Country),省(State),以及公司名称(Organization Name)等。
在证书申请过程中,OpenSSL 会自动从系统中获取当前系统的时区信息,并且要求申请者必须提供证书的有效期,以及证书的序列号等信息。此外,OpenSSL 也要求申请者必须提供证书的通用名称(Common Name),该名称通常用于表示证书的主机名或域名。
需要注意的是,OpenSSL 并不会检查申请者是否是合法的组织或公司,只会检查申请者提供的组织信息是否与 CA 的证书中的组织信息一致。因此,在使用 OpenSSL 申请证书时,需要谨慎核实申请者提供的组织信息是否正确,以确