openssl自建CA并生成自签名SSL证书

文件列表:

ca.key:CA私钥

ca.crt:CA根证书,用于后续签名SSL证书,需要加入到操作系统或浏览器的信任列表中

server.key:服务器私钥,需要配置到https服务,比如Apache和Nginx配置文件中

server.csr:证书签署请求文件,中间产物

server.crt:自签名服务器SSL证书,需要配置到https服务,比如Apache和Nginx配置文件中,服务器的身份证。

java 复制代码
#创建CA私钥文件: 
openssl genrsa -des3 -out ca-secure.key 2048 
#输入密码: 
Enter PEM pass phrase:123456 
#再次输入密码: 
Verifying - Enter PEM pass phrase:123456
#密码证书转无密码(此步按需,比如配置到Apache或者Nginx中时不必每次启动时输入密码)
openssl rsa -in ca-secure.key -out ca.key
#输入上述密码: 
Enter pass phrase for ca-secure.key:123456
#查看私钥内容:
openssl rsa -text -in ca-secure.key
#输入密码:
Enter pass phrase for server.key:123456
#生成CA自签名证书
openssl req -new -x509 -days 3650 -key ca.key -subj "/C=CN/ST=BJ/L=BJ/O=MyRootCA/OU=MyCA/CN=CA" -out ca.crt
#生成服务器私钥和证书申请文件CRS(此处CN代表web服务器主机名或IP地址)
openssl req -newkey rsa:2048 -nodes -keyout server.key -subj "/C=CN/ST=BJ/L=BJ/O=MyRootServer/OU=MyServer/CN=192.168.69.78" -out server.csr
#使用CA证书签名SSL证书,此处`-extfile <(printf "subjectAltName=IP:10.10.49.172[,DNS:<YOUR_DOMAIN>,...]")`:扩展用于指定主体的备用名称
openssl x509 -req -extfile <(printf "subjectAltName=IP:192.168.69.78") -days 3650 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt
#查看证书内容
openssl x509 -text -noout -in server.crt
相关推荐
sweet丶1 天前
iOS开发必备的HTTP网络基础概览
网络协议·ios
云老大TG:@yunlaoda3601 天前
华为云国际站代理商TaurusDB的成本优化体现在哪些方面?
大数据·网络·数据库·华为云
TG:@yunlaoda360 云老大1 天前
华为云国际站代理商GeminiDB的企业级高可用具体是如何实现的?
服务器·网络·数据库·华为云
是娇娇公主~1 天前
HTTPS【密钥交换+证书校验】流程讲解
网络·网络协议·面试·https·ssl
驰羽1 天前
NAT模式下VMware的虚拟机DNS解析失败的问题解决
linux·网络·dns
誰能久伴不乏1 天前
epoll 学习踩坑:`fcntl` 设置非阻塞到底用 `F_SETFL` 还是 `F_SETFD`?
linux·服务器·网络·c++·tcp/ip
北京耐用通信1 天前
告别“蜘蛛网”接线!耐达讯自动化PROFIBUS 三路集线器让气缸布线“一拖三”的神操作
人工智能·物联网·网络协议·自动化·信息与通信
云川之下1 天前
【网络】华为交换机S3700与S5700详解
服务器·网络·华为
小于晏1 天前
基于Socket实现的主流网络协议汇总
网络·网络协议
tianyuanwo1 天前
深入理解iptables:规则管理与匹配机制深度解析
网络·安全·web安全