为配置SSL,自制CA证书
Posted 想剪个寸头
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为配置SSL,自制CA证书相关的知识,希望对你有一定的参考价值。
步骤一:生成CA根证书
mkdir /etc/pki/ca_test #创建CA根证书的目录
cd /etc/pki/ca_test
mkdir root server client newcerts #创建几个相关的目录
echo 01 > serial #定义序列号为01
echo 01 > crlnumber #定于crl号为01
touch index.txt #创建index.txt
cd ..
vim tls/openssl.cnf #修改配置文件
openssl genrsa -out /etc/pki/ca_test/root/ca.key #生成私钥
openssl req -new -key /etc/pki/ca_test/root/ca.key -out /etc/pki/ca_test/root/ca.csr
#生成请求文件
#生成时会让填写等级一些信息
第一个表示 国家
第二个表示 省份
第三个表示 城市
第四个表示 组织名称(公司名称)
第五个表示 部门
第六个表示 serverhost name (例如填写 abc.com)
第七个表示 邮件地址
第八个表示 设置随机密码
第九个表示 跟第四个类似 可填写不一样的
openssl x509 -req -days 3650 -in /etc/pki/ca_test/root/ca.csr -signkey /etc/pki/ca_test/root/ca.key -out /etc/pki/ca_test/root/ca.crt
#生成crt文件 (-days 表示使用时间 -in 表示请求文件是谁 -signkey 表示指定签名的key是谁然后产生私钥 -out 表示最后生成的文件指定路径在哪)
ll ca_test/root/ #查看该路径下是否生成 ca.crt ca.csr ca.key 三个文件
步骤二:生成server端证书
cd /etc/pki/ca_test/server/
openssl genrsa -out server.key #生成私钥文件
openssl req -new -key server.key -out server.csr #生成请求文件 (这里的第四行要与上面定义过的那个要填写一致)
openssl ca -in server.csr -cert /etc/pki/ca_test/root/ca.crt -keyfile /etc/pki/ca_test/root/ca.key -out server.crt -days 3650
#用根证书签名server.csr 最后生成公钥文件server.crt 如图所示
(用-cert 指定根证书crt文件路径,用-keyfile指定根证书key文件的所在路径 最终生成)
ll /etc/pki/ca_test/server/ # 查看是否生成 server.crt、 server.csr、server.key 三个文件
步骤三:生成客户端证书
cd /etc/pki/ca_test/client/
openssl genrsa -out client.key #生成私钥文件
openssl req -new -key client.key -out client.csr #生成请求文件(与上面一样 第四步要填写一致)
openssl ca -in client.csr -cert /etc/pki/ca_test/root/ca.crt -keyfile /etc/pki/ca_test/root/ca.key -out client.crt -days 3650
#签名client.csr 生成client.crt 跟上面配置server端一样 需要输入两个y进行
#另外 执行此步骤时 如果出现下方报错,需执行:
报错信息:
failed to uptade database
TXT_DB error number 2
需执行:
sed -i s/unique_subject = yes/unique_subject = no/ /etc/pki/ca_test/index.txt.attr
执行完 然后再重复上方签名client.csr 的那条命令
最后查看是否生成三个文件 client.crt client.csr client.key
ll /etc/pki/ca_test/client/
以上是关于为配置SSL,自制CA证书的主要内容,如果未能解决你的问题,请参考以下文章