https自签名ssl证书生成流程

embedded/2024/9/23 11:19:31/

准备工作:

0.安装完整版的openssl

openssl下载官网

安装到C:\OpenSSL32,也可以安装到其它盘,不要包含空格和中文

打开openssl.exe所在目录如:C:\OpenSSL32\bin,输入cmd.exe打开cmd控制台
1.创建ca文件夹 ,证书文件夹
 
mkdir ca
mkdir certs

2.创建私钥 (建议设置密码)
openssl genrsa -des3 -out ca/myCA.key 2048
3.生成CA证书,20 年有效期

注意common name不要随意输入,可以输入为 my root ca

openssl req -x509 -new -nodes -key ca/myCA.key -sha256 -days 7300 -out ca/myCA.crt
4.创建服务器私钥
openssl genrsa -out certs/server.key 2048
5.创建ssl证书CSR
openssl req -new -key certs/server.key -out certs/server.csr

6.创建域名附加配置文件certs/cert.txt
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names[alt_names]
DNS.1 = server
IP.2 = 127.0.0.1
DNS.3 = test.com
DNS.4 = *.test.com

7.使用CA签署ssl证书

注意common name不要随意输入,可以输入为 my sercer ca

# ssl证书有效期10年
openssl x509 -req -in certs/server.csr -out certs/server.crt -days 3650  -CAcreateserial -CA ca/myCA.crt -CAkey ca/myCA.key -CAserial serial -extfile certs/cert.ext

8.如果你使用IIS作为网页服务器,那么需要生成server.pfx文件
openssl pkcs12 -export -in certs/server.crt -inkey certs/server.key -out certs/server.pfx
9.部署iis服务器

生成完成后使用server.pfx文件作为iis服务器证书即可

10.在手机或电脑端安装ca证书

所有需要访问的电脑需要将myCA.crt文件安装到-->受信任的根证书颁发机构必须安装到此目录

11.在浏览器输入https://ip   即可正常访问,如图

https://img-blog.csdnimg.cn/direct/c22057bca9504929862a841bc1ee13db.png" width="1026" />

11.验证证书是否ok
openssl verify -CAfile ca/myCA.crt certs/server.crt

参考链接:

file-make_cert.md

openssl自签一个给网站用的证书

https://img-blog.csdnimg.cn/direct/a655bf7ffca94a958912d9f708a43152.png" width="1062" />

https://img-blog.csdnimg.cn/direct/b08c887e105941dd8aafd633721b2300.png" width="930" />

https://img-blog.csdnimg.cn/direct/b7d886fb66bb411985969f5acec76ec4.png" width="924" />

https://img-blog.csdnimg.cn/direct/303e1f6c08b045cf8bd53fdc73d000bc.png" width="924" />

证书层次如下:

https://img-blog.csdnimg.cn/direct/9087a0b9e09b4ba1ab11c0bd84fb192b.png" width="843" />


http://www.ppmy.cn/embedded/33492.html

相关文章

游戏AI的智能化:机器学习在虚拟生命中的应用

文章目录 写在前面游戏AI的智能化:机器学习在虚拟生命中的应用游戏内容的自动化创作:机器学习的革新性应用玩家体验的个性化优化:机器学习的定制化力量未来展望:机器学习塑造游戏行业新纪元游戏AI的智能化发展自动化内容生成的革命…

00-Fortran基础--Fortran安装

00-Fortran基础--Fortran安装 *0* 引言*1* fortran安装 0 引言 Fortran(Formula Translation)是一种面向科学计算和工程计算的高级编程语言。它最初于上世纪50年代由IBM开发,现在已经成为科学计算领域中最流行的编程语言之一。Fortran的主要特…

Spring扩展点(一)Bean生命周期扩展点

Bean生命周期扩展点 影响多个Bean的实例化InstantiationAwareBeanPostProcessorBeanPostProcessor 影响单个Bean的实例化纯粹的生命周期回调函数InitializingBean(BeanPostProcessor 的before和after之间调用)DisposableBean Aware接口在生命周期实例化过…

19 内核开发-内核源码编译

19 内核开发-内核源码编译 (1)开始准备 安装好virtual box ubuntu 系统后,即可下载内核代码,进行编译 历史内核源码地址:https://mirrors.tuna.tsinghua.edu.cn/kernel/v5.x/ 下载 linux-5.10.102.tar.gz 的包,可以使用wget 命令 创建编译目…

服务器IP选择

可以去https://ip.ping0.cc/查看IP的具体情况 1.IP位置--如果是国内用,国外服务器的话建议选择日本,香港这些比较好,因为它们离这里近,一般延时低(在没有绕一圈的情况下)。 不过GPT的话屏蔽了香港IP 2. 企…

秋招算法刷题8

20240422 2.两数相加 时间复杂度O(max(m,n)),空间复杂度O(1) public ListNode addTwoNumbers(ListNode l1, ListNode l2) {ListNode headnull,tailnull;int carry0;while(l1!null||l2!null){int n1l1!null?l1.val:0;int n2l2!…

神经网络:手写数字图像识别

一、导入相关库函数 import matplotlib.pyplot as plt import tensorflow as tf import keras import numpy as np 二、载入mnist数据集 使用keras.中的mnist数据集 (train_images, train_labels), (test_images, test_labels)\ keras.datasets.mnist.load_data() 三、测…

LNMP一键安装包

LNMP一键安装包是什么? LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian/Deepin/Alibaba/Amazon/Mint/Oracle/Rocky/Alma/Kali/UOS/银河麒麟/openEuler/Anolis OS Linux VPS或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQ…