openssl 命令 生成与吊销证书示例 生成CA证书 客户端证书 服务器证书 用CA签名客户服务器的CSR证书



要使用 OpenSSL 生成和吊销证书,你可以按照以下步骤操作:

1. 生成证书

使用 OpenSSL 生成自签名证书的步骤如下:

生成私钥:
bash 复制代码
openssl genrsa -out key.pem 2048
生成证书请求(CSR):
bash 复制代码
openssl req -new -key key.pem -out csr.pem
自签名证书:
bash 复制代码
openssl x509 -req -in csr.pem -signkey key.pem -out cert.pem

2. 吊销证书

要吊销证书,首先需要创建一个 CRL 文件,然后将要吊销的证书添加到 CRL 中。

生成 CRL:
bash 复制代码
openssl ca -gencrl -keyfile ca.key -cert ca.crt -out crl.pem
吊销证书:
bash 复制代码
openssl ca -revoke cert.pem -keyfile ca.key -cert ca.crt
更新 CRL:
bash 复制代码
openssl ca -gencrl -keyfile ca.key -cert ca.crt -out crl.pem

这些步骤将帮助你生成自签名证书并吊销证书。确保你有适当的权限来执行这些操作,并且按照正确的顺序执行步骤。

执行openssl ca -gencrl -keyfile ca.key -cert ca.crt -out crl.pem 提示错误calling fopen(./demoCA/index.txt, r)

就手工建一个空的demoCA/index.txt

并指定-config cnf/openssl.cnf

又报找不到这个文件./demoCA/crlnumber

新建一个并写入00 保存

再试就OK了。

最终吊销脚本

bash 复制代码
::生成 CRL:
set CERT=KRDF2001012A202002
openssl ca -config cnf/openssl.cnf -gencrl -keyfile ca_root.key -cert ca_root.crt -out %CERT%.crl -passin pass:778899


::吊销证书:
openssl ca -revoke %CERT%.crt -keyfile ca_root.key -cert ca_root.crt -passin pass:778899

::更新 CRL:
openssl ca -gencrl -keyfile ca_root.key -cert ca_root.crt -out %CERT%.crl -passin pass:778899

pause
相关推荐
云和数据.ChenGuang2 小时前
关闭 GitLab 升级提示的详细方法
运维·自动化·gitlab·es运维
007php0072 小时前
服务器上PHP环境安装与更新版本和扩展(安装PHP、Nginx、Redis、Swoole和OPcache)
运维·服务器·后端·nginx·golang·测试用例·php
saynaihe8 小时前
ubuntu 22.04 anaconda comfyui安装
linux·运维·服务器·ubuntu
企鹅与蟒蛇8 小时前
Ubuntu-25.04 Wayland桌面环境安装Anaconda3之后无法启动anaconda-navigator问题解决
linux·运维·python·ubuntu·anaconda
小蜜蜂爱编程9 小时前
ubuntu透网方案
运维·服务器·ubuntu
AI视觉网奇9 小时前
git 访问 github
运维·开发语言·docker
头发那是一根不剩了10 小时前
nginx:SSL_CTX_use_PrivateKey failed
运维·服务器
七夜zippoe10 小时前
破解 VMware 迁移难题:跨平台迁移常见问题及自动化解决方案
运维·自动化·vmware
hweiyu0011 小时前
docker简介
运维·docker·容器
Sally璐璐12 小时前
OpenVPN:深度解析开源 VPN 解决方案
运维·开源