Https自签名证书

news2024/9/24 11:29:33

openSSL下载

https://slproweb.com/products/Win32OpenSSL.html

1_整体流程

(1)https介绍

HTTPS 是 Hypertext Transfer Protocol Secure 的简称,是基于 SSL 加密方式的 HTTP 协议

(2)CA机构介绍

介绍:CA机构是SSL证书认证或者说颁发机构,但是CA机构并不是只此一家,只要有相应的算法,每个人都可以做CA机构,但是只有公信力或者说权威性得到广大用户认可的CA机构颁发的证书在浏览器中才会被认可,不被认可的机构颁发的ssl证书会在浏览器中提示“不被信任的链接”。

生成CA机构:使用openssl工具里面的开源算法生成私钥key和公钥csr,然后再生成证书即可crt

(3)生成自签名证书流程

生成SSL的私钥key和公钥csr,然后把公钥给ca机构,使用ca机构的证书进行认证并生成SSL证书crt

image-20240228111623172

2_代码

生成ssl私钥

openssl genrsa -des3 -out server.key

生成ssl公钥

openssl.exe req -new -key server.key -out pub.csr


生成ca公钥

req -new -key myca.key -out myca.csr


生成ca根证书

x509 -req -in myca.csr -extensions v3_ca -signkey myca.key -out myca.crt


使用ca跟证书给ssl签名并生成ssl证书

x509 -days 1095 -req -in pub.csr -extensions v3_req -CAkey myca.key -CA myca.crt -CAcreateserial -out server.crt

配置nginx

server {
        listen       8926;
        server_name  perstest.hebut.edu.cn;
        ssl_certificate /data/ca_and_ssl/server.crt
        ssl_certificate_key /data/ca_and_ssl/server.key
        location /{
	        root /usr/jibei-html-dist;
 	        index index.html index.htm;
     	}

3_ 遇到的问题

启动nginx报错nginx: [emerg] the “ssl” parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:152

原因:安装nginx的时候没有安装ssl模块

解决办法:https://blog.csdn.net/qq_27164017/article/details/135653135?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-2-135653135-blog-95622649.235%5Ev43%5Econtrol&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-2-135653135-blog-95622649.235%5Ev43%5Econtrol

安装openssl在linux中:yum install openssl-devel -y

如果nginx没有ssl模块的话需要重装

解压nginx安装包进入目录执行命令:./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module

配置完nginx之后启动不起来对应的端口

报错SSL: error:0906406D:PEM routines:PEM_def_callback:problems getting password error:0906A068:PEM routines:PEM_do_header:bad password read

查询得知nginx不支持输入密码访问ssl秘钥,所以需要生成一个没有密码就能访问的秘钥

mv server.key server_pass.key
openssl rsa -in server_pass.key -out server.key

image-20240227153648650

https://www.dell.com/support/kbdoc/zh-tw/000208401/data-protection-search-dpsearch-nginx-service-fail-to-start-after-installing-new-ssl-certificate

4_其他方式

https://www.cnblogs.com/littleatp/p/5922362.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1701479.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PHP之fastadmin系统配置分组增加配置和使用

目录 一、实现功能:fasttadmin实现添加系统配置分组和添加参数、使用 二、添加分组 三、配置分组参数 四、最终存储位置 五、获取配置参数 一、实现功能:fasttadmin实现添加系统配置分组和添加参数、使用 二、添加分组 在字典配置中找到分组对应键值…

高效掌控速卖通自养号测评:成本、步骤、技巧全方位掌握

在跨境电商的汹涌浪潮中,速卖通犹如一颗璀璨的领航星,引领着无数寻求海外拓展的企业和商家驶向国际市场的广阔海域。从最初的C2C模式起步,速卖通历经蜕变,如今已华丽转身成为B2C跨境电商领域的翘楚,承载着无数中国卖家…

新业务 新市场 | 灵途科技新品亮相马来西亚亚洲防务展

5月6日,灵途科技携新品模组与武汉长盈通光电(股票代码:688143)携手参加第18届马来西亚亚洲防务展。首次亮相海外,灵途科技便收获全球客户的广泛关注,为公司海外市场开拓打下坚实基础。 灵途科技与长盈通共同…

探索Facebook:数字社交的新时代

Facebook,作为全球最大的社交网络平台之一,一直在引领着数字社交的发展潮流。随着科技的不断进步和社会的不断变迁,Facebook也在不断演进和创新,迎接着数字社交的新时代。本文将探索Facebook在数字社交领域的新发展,以…

fpga系列 HDL: 05 阻塞赋值(=)与非阻塞赋值(<=)

在Verilog硬件描述语言(HDL)中,信号的赋值方式主要分为两种:连续赋值和过程赋值。每种赋值方式有其独特的用途和语法,并适用于不同类型的电路描述。 1. 连续赋值(Continuous Assignment,assign 和&#xf…

pycharm中无法激活conda虚拟环境

在windwos的cmd命令行中能激活,但是pycharm中无法激活虚拟环境,报错提示: 后来发现pycharm默认命令行是powershell,改成cmd重启pycharm命令行即可

windows安全配置

环境:本文我们以Windows Server 2012 R2为例,进行加固 Windows 不论什么版本,进行安全配置均包含以下两个常用维度 1、账户策略 ①密码策略 强制密码历史,建议设置为24个 密码最长使用期限,建议设置60天 密码最短…

Excel函数之SCAN

SCAN 语法 SCAN([initial_value], array, lambda(accumulator,value,calculation)) initial_value:用于设置累加器的初始值,即accumulator的初始值,该值为空时,array的首个值将直接赋值给累加器,并且该值将不参与函数运算array:需要进行循环计算的数组accumulator:累加…

HTML5 基本框架

HTML5基本的内容 文章目录 系列文章目录前言一、HTML5 基本框架二、具体框架结构三、知识补充总结 前言 HTML5的介绍: HTML5 是一种用于构建网页内容的标准化语言。它是 HTML(超文本标记语言)的第五个版本,引入了许多新的功能和特…

wordpress主题给网站增加一个版权声明区块代码分享

在数字化时代,网络上的信息传播变得越来越便捷,给人们生活和工作带来了极大的便利。然而,在这个过程中也产生了很多版权问题。为了更好地保护自己的版权,许多网站开始在其网页上添加版权声明。本文将探讨在网站上添加版权声明的重…

PageHelper分页查询时,count()查询记录总数与实际返回的数据数量不一致

目录 场景简介代码判断异常情况排查原因解决 场景简介 1、使用PageHelper进行分页查询 2、最终构建PageInfo对象时,total与实际数据量不符 代码判断 异常情况 排查 通过对比count()查询的SQL与查询记录的SQL,发现是PageHelper分页查询时省去了order b…

Object类——toString方法和equals方法

前言: 在java中,所有类都是有继承关系存在的,都默认继承Object类。当一个类继承了其他父类,它并不会直接继承Object类,但是它的父类若是没有其他继承关系也会默认继承Object类,子类也可以继续调用Object类…

无线麦克风哪个品牌音质最好,揭示麦克风什么牌子的音质效果好!

​随着科技的不断发展,无线领夹麦克风已经成为现代演讲、演出和采访中不可或缺的工具。这种小巧便携的设备,能够让我们摆脱线缆的束缚,自由地在舞台上或讲台上移动,同时保持声音的清晰和稳定。在这篇文章中,我们将介绍…

基于Ubuntu的Bash脚本实现SystemUI的编译真机验证

使用场景描述 当开发SystemUI的时候,开发完一个需求后需要到真机上验证,虽然SystemUI模块开发最后的产物也是APK,但是这个APK 却不能单独安装查看效果,因为SystemUI是系统级别的应用,需要放置到系统指定的目录下。这时…

牛客热题:最小的k个数

📟作者主页:慢热的陕西人 🌴专栏链接:力扣刷题日记 📣欢迎各位大佬👍点赞🔥关注🚓收藏,🍉留言 文章目录 牛客热题:最小的k个数题目链接方法一&…

三轴加速度计M-A352AD实现实时的动态监测

地震监测设备如何快速监测到地震波的发生?如何快速地将地震信号传输到系统或设备上,让人快速做出相应对策?如何在恶劣的环境下,仍能保持稳定可靠的监测?其核心之一就是采用了传感器技术和相关设备,我们可以在地震易发生区域或重点观察的区…

人大金仓 KingBase查询死锁,释放死锁

人大金仓(kingbase)查询数据库死锁及释放 kingbase锁表排查以及释放锁 总结下 -- 查询,可自己添加where条件 SELECT * FROM sys_stat_activity WHERE state ! idle AND wait_event_typeLock-- 结束进程 SELECT sys_terminate_backend(pid);

学习Java的日子 Day49 函数,DOM

Day48 1.流程控制语句 if else for for-in(遍历数组时,跟Java是否一样) While do while break 语句用于跳出循环 continue 用于跳过循环中的一个迭代 2.函数 2.1 JavaScript 函数语法 函数就是包裹在花括号中的代码块,前面使用了关键词 function funct…

【NumPy】关于numpy.subtract()函数,看这一篇文章就够了

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

观原力谱能超导实验室原创科普舞台剧能源小队的奇幻旅程第一次对外公演记

昨天发出后,总感觉很多违和之处,斟酌之后略改: 观原力谱能超导实验室原创科普舞台剧 能源小队的奇幻旅程第一次对外公演记 卡西莫多 科学奥妙多奇观 深邃微界有沃原 亿万齐聚窸微力 原子宏观现光谱 物质都有静态能 聚变核能威猛超 国…