一、概述

在有一定规模的数据中心因为安全等因素,也在逐步将非加密http服务切换至https上,如果使用公有云的CA签发的证书会有不菲的证书支出,并且这部分证书仅是为了内部使用,同时造成了很大的成本浪费。因此管理员们通常会在数据中心搭建私有的CA供内部使用。

二、私有CA的实现

1、建立CA可以使用openca工具,同时也可以利用系统自带的openssl来实现

包含的openssl:相关包 openssl和openssl-libs

1.1、确认当前没有缺少库包

image.png

1.2、确认/etc/pki/tls/openssl.conf文件配置是否符合预期,其中包含证书有效期、策略匹配模式等

策略模式: match:要求申请填写的信息跟CA设置信息必须一致 optional:可有可无,跟CA设置信息可不一致 supplied:必须填写这项申请信息

image.png

1.3、准备CA所需要的文件

#创建CA的工作目录
mkdir -pv /etc/pki/CA/{certs,crl,newcerts,private}
#生成证书索引数据库文件
touch /etc/pki/CA/index.txt
#指定第一个颁发证书的序列号
echo 01 > /etc/pki/CA/serial

image.png

1.4、生成CA私钥信息

image.png

1.5、生成CA自签名证书

openssl req -new -x509 -key private/cakey.pem -days 10000 -out /etc/pki/CA/cacert.pem 

image.png 将制作的ca证书发送至windows查看信息 image.png 也可以通过centos直接查看 image.png

1.6、创建用户证书存放目录

[root@ca CA]# mkdir -pv /data/key1
mkdir: created directory '/data'
mkdir: created directory '/data/key1'

1.7、生成第一个证书的私钥

image.png

1.8、生成第一个证书的请求文件

image.png

1.9、CA对于key1请求进行签名

image.png

1.10、签名后CA工作目录的文件内容

image.png

2、签名确认

image.png

image.png 到此完成一个证书流程。

三、总结

在配置过程中一定要细心,在编号初始时不要写入不可见字符,否则无法签名。