Linux openssl 搭建CA、签名证书
目录
- 前言
- 配置CA
- 安装openssl
- 修改 openssl 配置文件
- 创建所需要的文件
- 创建CA KEY
- 创建CA 证书
- 创建证书
- 生成密钥
- 生成签名请求文件
- 签名证书请求文件
- 自签名证书
- 创建 KEY
- 生成自签名证书
- 错误
- openssl TXT_DB error number 2 failed to update database
前言
略
配置CA
安装openssl
shell> yum list installed | grep openssl
shell> yum install -y openssl
修改 openssl 配置文件
shell> vim /etc/pki/tls/openssl.cnf
将 policy = policy_match
改为 policy = policy_anything
创建所需要的文件
生成证书索引数据库文件 (默认为空文件)
shell> touch /etc/pki/CA/index.txt
指定第一个颁发证书的序列号
shell> echo 01 > /etc/pki/CA/serial
创建CA KEY
shell> cd /etc/pki/CA/
shell> openssl genrsa -out private/cakey.pem 2048
shell> chmod 400 private/cakey.pem
创建CA 证书
shell> cd /etc/pki/CA/
shell> openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650
-new
: 生成新证书签署请求-x509
: 专用于CA生成自签证书-key </path/file>
: 指向私钥文件-days <n>
:证书的有效期限-out </path/file>
: 证书的保存路径
创建证书
生成密钥
shell> openssl genrsa -out com.mydomain.key 2048
生成签名请求文件
shell> openssl req -new -key com.mydomain.key -out com.mydomain.csr
签名证书请求文件
shell> cd /etc/httpd/cert.d/
shell> openssl ca -in com.mydomain.csr -out com.mydomain.crt -days 360
Using configuration from /etc/pki/tls/openssl.cnf
Check that the request matches the signature
Signature ok
Certificate Details:Serial Number: 2 (0x2)ValidityNot Before: Sep 4 12:28:26 2022 GMTNot After : Aug 30 12:28:26 2023 GMTSubject:countryName = CNstateOrProvinceName = BEIJINGlocalityName = BEIJINGorganizationName = COMPANYorganizationalUnitName = SECTIONcommonName = mydomain.comemailAddress = admin@mydomain.comX509v3 extensions:X509v3 Basic Constraints: CA:FALSENetscape Comment: OpenSSL Generated CertificateX509v3 Subject Key Identifier: 41:E1:70:F4:38:7E:88:92:E2:6D:8C:6B:45:FC:B9:26:DF:D9:1C:5BX509v3 Authority Key Identifier: keyid:B6:12:B9:F5:91:13:D1:F7:90:09:0F:5A:49:2C:9E:5B:D1:0B:B9:DCCertificate is to be certified until Aug 30 12:28:26 2023 GMT (360 days)
Sign the certificate? [y/n]:y1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
-cert
: 指向CA证书。不指定该参数时,默认指向/etc/pki/CA/cacert.pem
。-keyfile
: 指向CA KEY。不指定该参数时,默认指向/etc/pki/CA/private/cakey.pem
。
自签名证书
创建 KEY
shell> openssl genrsa -out com.mydomain.key 2048
生成自签名证书
shell> openssl req -new -x509 -key com.mydomain.key -out com.mydomain.crt -days 365
-x509
: 用于生成自签证书
错误
openssl TXT_DB error number 2 failed to update database
这种情况一般发生在你之前生成过一样的证书,又想重新生成一模一样的证书。
解决方法有2种:
- 解决方法1:修改
/etc/pki/CA/index.txt.attr
,将unique_subject = yes
改为unique_subject = no
。一旦修改,无法再修改回来。 - 解决方法2:删除
/etc/pki/CA/index.txt
、/etc/pki/CA/serial
及相关文件,并重新创建/etc/pki/CA/index.txt
、/etc/pki/CA/serial
。
Linux openssl 搭建CA、签名证书相关推荐
- 基于 OpenSSL 生成自签名证书,数字签名,泛域名证书,ca证书,PKI等
基于 OpenSSL 生成自签名证书_qhh0205-CSDN博客_openssl自签名证书 windows 下 nginx 双向认证自签名证书配置 windows 下 nginx 双向认证自签名证书 ...
- linux下搭建CA认证
我们知道,当客户端与服务器端建立会话之前,首先是客户端发送请求,只有通过TPC/IP三次握手后,客户端与服务器端才能建立ssl会话.握手的过程简单的说也可以总结为三个步骤,第一步:客户端和服务器双方共 ...
- 【自签名证书私有CA签名证书】
一.自签名证书 创建私钥 openssl genrsa -out ssl.key 1024 创建证书签名请求(根据私钥生成证书签名请求 一般是生成请求以后发送给CA,然后CA会给你签名并发回证书) o ...
- Openssl生成自签名证书并导入浏览器脚本
Openssl生成自签名证书并导入浏览器 使用说明 1. 准备工作 2. 脚本 3. 导入浏览器 4. 使用证书 使用说明 环境:Centos 7 运行脚本后可以生成根证书.自签名证书(可以指定域名或 ...
- 【实战-Linux】--搭建CA认证中心实现https取证
环境 CA认证中心服务端:xuegod63.cn IP:192.168.1.63 客户端:xuegod64.cn IP:192.168.1.64 CA认证中心简述 CA :Cer ...
- asn1 pem pfx格式证书_Linux使用openssl管理自签名证书保障网络安全
请关注本头条号,每天坚持更新原创干货技术文章. 如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习 1. 前言 本文主要介绍如何在Linux系统上使用OpenSSL命 ...
- Ubuntu18.04 使用 openssl制作自签名证书
执行"openssl verison",判断系统是否已安装openssl,若没有安装,请使用apt安装openssl. 一.图解自签名过程 二.关于 CRT PEM KEY CST ...
- 使用OpenSSL生成自签名证书和格式转换
OpenSSL安装:https://blog.csdn.net/qq_44734154/article/details/125995475 一.生成证书私钥 genrsa 介绍:https://www ...
- openssl生成自签名证书
2019独角兽企业重金招聘Python工程师标准>>> 生成CA证书,自己做CA openssl req -new -x509 -keyout ca.key -out ca.crt ...
最新文章
- php发送指令,PHP发送AT指令实例代码
- 张槎地铁站定位综合枢纽 与多条重要轨道交汇
- elasticjob2.x 获取上次执行时间_深圳会务公司-会议活动策划与执行注意事项
- 微软云服务再添新产品,这次来自两位华裔女科学家创办的AI公司
- 合成孔径成像算法与实现_浅析太赫兹成像技术在消防领域中的应用前景
- kindle 3快捷键
- Cosmos OpenSSD--greedy_ftl1.2.0(一)
- Java架构师在线视频,架构师的7大必备技能
- SAP CRM系统到底有多少种订单类型
- springboot 以jar方式在linux后台运行
- require('module') 是什么?
- JPA映射组合主键时错误:No default constructor for entity
- member.php?mod=register文件在哪里,DEDECMS修改member会员中心文件夹名称 更改member目录名称...
- iTunes Connect(一) —— iOS应用上架到AppStore
- bzoj 2131: 免费的馅饼(树状数组+DP)
- spring揭秘总结(一)——spring的Ioc容器
- 如何下载有效的Flash离线安装包
- 关于 jspx 文件的一些说明
- IPQ5018测试问题之Connect to QPST server
- .net 导出excel_使用 EasyPOI 优雅导出Excel模板数据(含图片)