SSL/TSL 总结

参考:https://blog.csdn.net/qq153471503/article/details/109524764

(一)生成CA证书

1、创建CA证书私钥

openssl genrsa -aes256 -out ca.key 2048 (密码:ca1234567890)

2、请求证书

openssl req -new -sha256 -key ca.key -out ca.csr -subj "/C=CN/ST=SD/L=JN/O=QDZY/OU=www.test.com/CN=CA/emailAddress=admin@test.com" (密码:ca1234567890)

3、自签署证书

openssl x509 -req -days 36500 -sha256 -extensions v3_ca -signkey ca.key -in ca.csr -out ca.cer (密码:ca1234567890)

(二)生成服务器证书

1、创建服务器私钥

openssl genrsa -aes256 -out server.key 2048 (密码:server1234567890)

2、请求证书

openssl req -new -sha256 -key server.key -out server.csr -subj "/C=CN/ST=SD/L=JN/O=QDZY/OU=www.test.com/CN=SERVER/emailAddress=admin@test.com" (密码:server1234567890)

3、使用CA证书签署服务器证书

openssl x509 -req -days 36500 -sha256 -extensions v3_req -CA ca.cer -CAkey ca.key -CAserial ca.srl -CAcreateserial -in server.csr -out server.cer (密码:ca1234567890)

(三)生成客户端证书 (密码:server1234567890)

1、创建客户端私钥

openssl genrsa -aes256 -out client.key 2048 (密码:client1234567890)

2、申请证书

openssl req -new -sha256 -key client.key -out client.csr -subj "/C=CN/ST=SD/L=JN/O=QDZY/OU=www.test.com/CN=CLIENT/emailAddress=admin@test.com" (密码:client1234567890)

3、使用CA证书签署客户端证书

openssl x509 -req -days 36500 -sha256 -extensions v3_req -CA ca.cer -CAkey ca.key -CAserial ca.srl -CAcreateserial -in client.csr -out client.cer (密码:ca1234567890)

验证:

单向认证命令行:

服务器:

openssl s_server -CAfile ca.cer -cert server.cer -key server.key -accept 22580 (密码:server1234567890)

客户端:

openssl s_client -CAfile ca.cer -cert client.cer -key client.key -connect 127.0.0.1 -port 22580 (密码:client1234567890)

双向认证:

服务器:

openssl s_server -CAfile ca.cer -cert server.cer -key server.key -accept 22580 -Verify 1 (密码:server1234567890)

客户端:

openssl s_client -CAfile ca.cer -cert server.cer -key server.key -cert client.cer -key client.key -connect 127.0.0.1 -port 22580 (密码:client1234567890)

备注:

证书的参数含义

C-----国家(Country Name)

ST----省份(State or Province Name)

L----城市(Locality Name)

O----公司(Organization Name)

OU----部门(Organizational Unit Name)

CN----产品名(Common Name)

emailAddress----邮箱(Email Address)

=================================================================================================================

Linux 系统使用 CRT,Windows 系统使用 CER

名词 含义

X.509 一种通用的证书格式,包含证书持有人的公钥,加密算法等信息

pkcs1 ~pkcs12 公钥加密(非对称加密)的一种标准(Public Key Cryptography Standards),一般存储为 .pN,, .p12 是包含证书和密的封装格式

*.der 证书的二进制存储格式(不常用)

*.pem 证书或密钥的 Base64 文本存储格式,可以单独存放证书或密钥,也可以同时存放证书或密钥

*.key 单独存放的 pem 格式的密钥,一般保存为 *.key

*.cer *.crt 两个指的都是证书,Linux 下叫 crt,Windows 下叫 cer;存储格式可以是 pem,也可以是 der

*.csr 证书签名请求(Certificate signing request),包含证书持有人的信息,如:国家,邮件,域名等信息

*.pfx 微软 IIS 的实现

*.jks Java 的 keytool 实现的证书格式

相关推荐
发量惊人的中年网工2 小时前
自建清洗中心VS托管安全服务:2026年企业DDoS防护ROI深度测算
网络·ddos
Yang961110 小时前
光缆故障快速排查实操技巧,鼎讯信通 Smart-S3 OTDR 一线使用心得
网络
LDZKKJ11 小时前
OpenAI模型“越狱“入侵Hugging Face——AI安全史上的至暗时刻
网络·人工智能·安全
xqqxqxxq13 小时前
Java Socket 多人聊天室(私聊+群聊)技术笔记(V4版本)
java·网络·笔记
泡沫冰@13 小时前
上章节中文件的讲解
前端·网络·nginx
海域云-罗鹏16 小时前
分支访问总部ERP卡顿?如何部署SD-WAN组网解决方案
服务器·网络·安全
Shell运维手记16 小时前
ARP 协议超详细讲解(适合网工考试 / 运维理解)
运维·网络·网络协议·智能路由器
优化Henry17 小时前
学习笔记之VoNR语音业务注册流程
网络·笔记·学习·5g·信息与通信
ShineWinsu18 小时前
对于Linux:HTTP中cookie、session的解析
linux·网络·c++·网络协议·http·cookie·session
huainingning18 小时前
华三瘦AP切换为胖AP并配置无线功能
运维·网络·网络协议·tcp/ip