openssl生成证书

简介: 本文章是记录openssl命令生成私钥、证书签名请求、CA证书的命令和相关参数的解释。其中包含了各参数的名称、作用、技术细节和安全建议。

✨重磅!盹猫的个人小站正式上线啦~诚邀各位技术大佬前来探秘!✨
—— 专为开发者打造的宝藏基地,等你来探索!
这里有:


🔥 硬核技术干货:编程技巧、开发经验、踩坑指南,带你解锁技术新姿势!
🎉 趣味开发日常:代码背后的脑洞故事、工具测评,让技术圈不再枯燥~
💎 独家资源分享:开源项目、学习资料包,助你打怪升级快人一步!


🚀 立即访问 → 盹猫猫的个人小站 ← 点击探索
🌟 说不定这里就有你寻找已久的技术秘籍哦~

@[toc]

Welcome to Code Block's blog

本篇文章主要介绍了
[openssl生成证书]
❤博主广交技术好友,喜欢我的文章的可以关注一下❤

一、概述

本文章是记录openssl命令生成私钥、证书签名请求、CA证书的命令和相关参数的解释。其中包含了各参数的名称、作用、技术细节和安全建议。

  • CA私钥: 相当于加密时的密码,或者部门盖章。
  • 证书签名请求: 相当于申请表,在获取CA证书后就失效。
  • CA证书: 相当于颁发的证件。

二、关键步骤


2.1 生成CA私钥

openssl genrsa -out ca-key.pem 4096
参数 作用 技术细节 安全建议
genrsa 生成RSA私钥 使用RSA算法(非对称加密) 优先选择RSA 4096或ECC 256+
-out ca-key.pem 指定私钥输出文件 PEM格式(Base64编码) 生成后立即设置权限:chmod 600 ca-key.pem
4096 密钥长度 2048位是底线,4096位更安全 更长密钥更安全但性能更低

2.2 生成CSR(证书签名请求)

openssl req -new -key ca-key.pem -out ca-csr.pem
参数 作用 技术细节 交互说明
req 处理证书请求 遵循PKCS#10标准 -
-new 创建新CSR 生成新的公钥对(从私钥派生) 需要输入身份信息
-key ca-key.pem 指定签名私钥 用该私钥对CSR进行签名 确保私钥文件路径正确
-out ca-csr.pem 输出CSR文件 包含公钥+身份信息(不含私钥) 可临时保存,用后删除

交互流程示例(执行命令后会提示输入):

Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Beijing
Locality Name (eg, city) [Default City]:Beijing
Organization Name (eg, company) [Default Company Ltd]:My CA Inc.
Organizational Unit Name (eg, section) []:Security
Common Name (eg, your name or your server's hostname) []:My Root CA
Email Address []:admin@myca.com

2.3 自签名生成CA证书

openssl x509 -req -days 3650 -in ca-csr.pem -signkey ca-key.pem -out ca-cert.pem
参数 作用 技术细节 关键注意事项
x509 X.509证书操作 遵循RFC 5280标准 -
-req 输入是CSR文件 而非直接生成证书 必须与CSR匹配
-days 3650 证书有效期 10年(3650天) CA证书通常设较长有效期
-in ca-csr.pem 指定输入的CSR 提取公钥和身份信息 确保与私钥对应
-signkey ca-key.pem 用私钥自签名 使证书具备权威性 绝对不要泄露此私钥
-out ca-cert.pem 输出证书文件 PEM格式(Base64编码) 可自由分发

三、小结

在通信过程中,私自颁发的Openssl证书同样可用于通信,如自搭建的rpc通信服务,同样可以保证通信的安全,如果要使用已认证的如HTTPS请求,需向专业机构进行请求。


如果你对区块链感兴趣,可以浏览我的专栏:区块链

感谢您的关注和收藏!!!!!!

目录
相关文章
|
Java 数据安全/隐私保护
Java 中使用 OpenSSL 生成公钥私钥进行数据加解密
Java 中使用 OpenSSL 生成公钥私钥进行数据加解密
975 0
|
Linux 网络安全 开发工具
Centos 7下如何配置SMTP SSL(邮箱发送功能)
Centos 7下如何配置SMTP SSL(邮箱发送功能)
2044 0
Centos 7下如何配置SMTP SSL(邮箱发送功能)
|
Linux
CentOS 7 设置日系统时间为中国时区并启用NTP同步
一、CentOS 7 设置日系统时间为中国时区并启用NTP同步 在CentOS 6版本,时间设置有date、hwclock命令,从CentOS 7开始,使用了一个新的命令timedatectl。 yum install ntp //安装ntp服务 systemctl enable ntpd //.
9838 0
|
数据采集 机器学习/深度学习 数据可视化
分享68个Python爬虫源码总有一个是你想要的
分享68个Python爬虫源码总有一个是你想要的
1562 0
|
Arthas 测试技术 网络安全
The telnet port 3658 is used by process
是否在本地使用Arthas的时候,遇到The telnet port 3658 is used by process 34725 instead of target process 44848, you will connect to an unexpected process的异常,其实解决方法很简单。
3362 0
The telnet port 3658 is used by process
|
7月前
|
数据采集 存储 Prometheus
住宅IP获取的方法和途径有哪些?
住宅代理IP依托真实家庭宽带,具运营商归属与自然用户行为,是数据采集、跨境运营的关键工具。国内优选需聚焦三点:合规来源、稳定性能、场景适配。推荐通过正规服务商获取,或企业自建代理池,结合混合模式降本增效。选型重IP纯净度、低延迟、广覆盖,支持多协议与优质售后。应用中须严守《个人信息保护法》,规避关联风险,按业务类型配置静态或动态IP,并定期检测质量,确保高效匿名。借助科学策略,住宅IP可为合法业务提供坚实网络支撑。
|
9月前
|
人工智能 数据安全/隐私保护
阿里AI多款产品亮相第八届中国企业论坛
第八届中国企业论坛在京举行,阿里云受邀参会。通义万相生成开场视频,夸克AI眼镜、阿里云AI Stack等多款AI产品亮相。阿里通义大模型获央国企广泛采用,加速赋能金融、能源、制造等行业智能化升级。(236字)
351 0
|
人工智能 数据可视化 JavaScript
颠覆开发效率!国内首个微服务编排框架Juggle开源啦!
Juggle是国内首个开源的微服务编排框架,专注于解决企业微服务进程中接口重复开发、系统对接复杂等问题。它提供零代码、低代码和AI增强功能,通过可视化拖拽快速组装简单API为复杂接口,支持多协议、多语言脚本和流程多版本管理。相比国外框架如Conductor,Juggle更贴合国内需求,具备高效开发、企业级可靠性及信创适配等优势,助力企业实现敏捷创新与数字化转型。
1268 0
颠覆开发效率!国内首个微服务编排框架Juggle开源啦!
|
监控 安全 图形学
百度网盘下载速度很慢?电脑下载速度好快?玩游戏很慢?
OpenSpeedy是一款免费开源的Windows工具,可对百度网盘、游戏等软件进行加速,无需会员也能实现高速下载。
4405 0
|
JSON 数据格式 索引
实际使用Elasticdump工具对Elasticsearch集群进行数据备份和数据还原
就可以通过Elasticsearch的导入导出工具Elasticdump来实现,可以将Elasticsearch不同集群的数据进行索引备份和还原。
806 0