https-OPenSSL证书生成及自签名证书

news2025/1/16 13:47:45

目录

SSL/TLS

1、搭建OPenssl服务器

1.1、下载

 1.2、安装下载好的exe程序

2、服务器端证书-生成key、CSR、CRT

2.1、进入如下目录,执行cmd

 2.2、生成一个私钥key

 2.3、由生成的私钥key生成一个待签名的CSR证书文件(公钥)

 2.4、查看证书内容

3、自建CA证书

3.1、创建CA私钥

3.2、生成CA证书

3.3、生成CA根证书

3.4、对服务器证书签名

4、nginx配置ssl,支持https


注意:以下内容有参考其它资料。

SSL/TLS


TLS(Transport Layer Security) 是SSL(Secure Socket Layer) 的后续版本

证书生成以及自签名证书
查看系统已存证书:certmgr.msc,运行中输入可以查看证书管理器win+r。
CSR:证书签名请求文件,一个文件的后缀。
CRT:证书
key: 私钥,由key生成CSR,等待被签名。
 

1、搭建OPenssl服务器

1.1、下载

OPenSSL自签名下载:http://slproweb.com/products/Win32OpenSSL.html

 1.2、安装下载好的exe程序

2、服务器端证书-生成key、CSR、CRT

2.1、进入如下目录,执行cmd

 2.2、生成一个私钥key

使用openssl工具生成一个私钥key:

openssl.exe genrsa -des3 -out d:/a/server.key 

生成了一个key文件:

 2.3、由生成的私钥key生成一个待签名的CSR证书文件(公钥)

openssl.exe req -new -key d:/a/server.key -out d:/a/server.csr

-key:生成的私钥文件

-new:新创建一个文件

这个证书不能直接使用,需要签名生成一个CRT证书才能使用。

证书中信息:

·Country Name ( 2 letter code) [XX] :CN #请求签署人的信息

·State or Province Name(fullname) []:#请求签署人的省份名字

·Locality Name(eg, city) [Default City] :#请求签署人的城市名字

·Organization Name(eg, company) [Default Company Ltd] :#请求签署人的公司

·OrganizationalUnit Name(eg, section) []:#请求签署人的部门名字

·CommonName(eg, your name or your servers hostname) []:#这里一般填写服务器域名

 

 2.4、查看证书内容

openssl.exe req -text -in d:/a/server.csr

3、自建CA证书

自建CA
我们用的操作系统(windows, linux, unix, android, ios等) 都预置了很多信任的根证书, 比如我的windows中就包含VeriSign的根证书, 那么浏览器访问服务器比如支付宝www.alipay.com时, SSL协议握手时服务器就会把它的服务器证书发给用户浏览器, 而这本服务器证书又比如是VeriSign颁发的,自然就验证通过了。


3.1、创建CA私钥

openssl.exe genrsa -out d:/a/myca.key 2048

3.2、生成CA证书

openssl.exe req -new -key d:/a/myca.key -out d:/a/myca.csr

3.3、生成CA根证书

openssl.exe x509 -req -in d:/a/myca.csr -extensions v3_ca -signkey d:/a/myca.key -out d:/a/myca.crt

3.4、对服务器证书签名

openssl x509 -days 365 -req -in d:/a/server.csr -extensions v3_req -CAkey d:/a/myca.key -CA d:/a/myca.crt -CAcreateserial -out d:/a/server.crt

用CA的key对服务器端的公钥做签名。

4、nginx配置ssl,支持https

需要服务端的证书CRT和私钥key,所以需要把上面生成的服务端证书server.key和server.crt传输到nginx所在的服务器。

需要在nginx.conf文件中添加:

server {
        listen 443 ssl;
        server_name localhost;
        ssl_certificate /opt/cer/server.crt;
        ssl_certificate_key /opt/cer/server.key;
        location /ftp {
            root   /home/ftpadmin;
            index  index.html index.htm;
        }

    }

server {
        listen       8080;
        server_name  localhost;
        
        rewrite ^/(.*)$ https://localhost:443/$1 permanent;

    }

配置后重新启动需要输入密码,这里自己定义的server.key的密码是:123456

配置完,重启nginx服务,访问如下:

 如果想让https访问时不再提示不安全,需要把ca的crt证书安装到浏览器所在服务器的证书管理器中,因为这个证书时自己给自己签名的,是不受信任的,要想被信任,需要双击安装到受信任的根证书颁发机构存储区。从下图可以看出自己给自己颁发的。

5、一个免费的ssl证书网站

FreeSSL首页 - FreeSSL.cn一个提供免费HTTPS证书申请的网站

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

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

相关文章

跨境电商卖家如何创建客户参与的 Facebook 广告?

关键词:跨境电商卖家、客户参与、Facebook广告 想要从您的 Facebook 广告中获得更多潜在客户或转化?正在寻找为您自己的广告建模的成功秘诀? 在本文中,您将了解创建消费者响应的 Facebook 广告的八个技巧。 将您现有的 Facebook 受…

零基础能否转行做程序员,那些半路出家的程序员大神给你做了榜样

这些年,随着中国互联网产业的高速发展,对程序员这个职业的需求越来越大。而相对较高的薪水、简单的人际关系、入行不需要靠拼爹这些优点,也让越来越多的年轻人选择了这个职业。甚至很多本来已经从事了其他行业的年轻人,也都想转行…

Promise(三) promise自定义封装25-35

1.初始结构搭建 2.resolve和reject结构搭建 3.throw抛出异常改变状态 4.promise对象状态只能修改一次 5.then方法执行回调 6.指定多个回调的实现 7.同步修改状态then方法结果返回 8.异步修改状态then方法结果返回 9.then方法完善与优化 10.catch方法——异常穿透与值管…

网络技术基础复习——计算机网络基本概念七层模型

作者简介:一名在校云计算网络运维学生、每天分享网络运维的学习经验、和学习笔记。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 前言 本章将会复习网络技术的一些知识,了解网络基础概念&#x…

如何学习python?python该怎么学?如何高效率学习python?分享python的学习资料和网站

如何学习python? 1、学好python的第一步,就是马上到网站上下载一个python版本。我建议初学者,不要下载具有IDE功能的集成开发环境,比如Eclipse插件等。 2、下载完毕后,就可以开始学习了。学习过程中,我建议…

商业报表工具-FineReport JS 实现动态隐藏参数以及控制参数面板高度

1. 概述 1.1 版本 报表服务器版本 功能变更 11.0 -- 1.2 预期效果 开发报表的时,经常会遇到使用的参数控件较多的情况,这时候可以对一些不常用、不需要展现出来的的控件进行隐藏,当需要展示的时候再使其展示出来,如下图所示&…

数字化信道

数字化信道 数字化信道主要包括多相滤波和DFT两个模块。 多相滤波 多相滤波,就是将滤波器系数按照相数进行重排。在D倍抽取后,整个频带的频谱将混叠在0频附近[−Fs2D,Fs2D)[-\frac{F_s}{2D} ,\frac{F_s}{2D})[−2DFs​​,2DFs​​)。因此,…

超标量处理器设计——第四章_分支预测

超标量处理器设计——第四章_分支预测 参考《超标量处理器》姚永斌著 4.1 简述 分支预测主要与预测两个内容, 一个是分支方向, 还有一个是跳转的目标地址首先需要识别出取出的指令是否是分支指令, 如果是需要送入方向和地址预测模块: 分支预测最好的时机就是当前周期取到指令地…

【C++】拷贝构造函数

目录 默认拷贝构造函数 拷贝构造函数的原型: 为什么不用值传递? 为什么不用指针传递? 调用拷贝构造函数的3种情况 (旧对象去构造新对象) 我们熟悉的类型有以下操作: 1.声明:int a; 2.声明并初始化:in…

圣诞节怎么能缺少圣诞树呢?Python+HTML打造专属于你的圣诞树

前言: 美酒一杯让人醉,温馨陪伴浪漫随;雪花片片惹人爱,烦恼忧伤全不见;字里行间藏真情,文短情深送心愿:圣诞佳节快来到,祝大家永远开心幸福! Hello大家好,我是Dream。 圣诞节马上到了,一些朋友问…

非零基础自学Golang 第14章 反射 14.2 基本用法 14.2.1 获取类型信息

非零基础自学Golang 文章目录非零基础自学Golang第14章 反射14.2 基本用法14.2.1 获取类型信息第14章 反射 14.2 基本用法 在使用反射时,我们会经常使用到反射的种类(Kind),reflect.Kind在Go语言reflect包中的定义如下&#xff…

认知水平越低的人,越喜欢回复“收到”

前几天后台有位粉丝留言: “有一次回复’收到’,竟被领导痛批一顿! 领导什么活都让我干,找资料、填表格、开会,虽然明知忙不过来,内心也不乐意做个打杂工,但嘴巴却只能缓缓吐出‘收到’两个字……

设计模式之中介者模式

Mediator design pattern 中介者模式的概念、中介者模式的结构、中介者模式的优缺点、中介者模式的使用场景、中介者模式的实现示例、中介者模式的源码分析 1、中介者模式的概念 中介者模式,又称调停模式,即定义一个中介者来封装原有多个对象之间的依赖…

SpringBoot中Redis使用之jedis

目录 pom.xml中导入坐标 application.yml添加配置 lettcus与jedis区别 本人springboot版本2.7.6&#xff0c;redis版本5.0.14.1亲测可用 pom.xml中导入坐标 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId&…

大学生自学Python去面试,月薪为何如此少?问题究竟出在哪?

市场上需要的Python人员非常多&#xff0c;而且按照现在的势头&#xff0c;以后会需要更多的Python开发人员&#xff0c;理由是以后每个人公司都会有自己的网站&#xff0c;有自己的开发部&#xff0c;对于用户体验看的非常重要。所以Python程序员就会很吃香。随时时间的推移&a…

62354-43-2,标记肽vLK-对硝基苯胺

很多蛋白在细胞中非常容易被降解&#xff0c;或被标记&#xff0c;进而被选择性地破坏。但含有部分D型氨基酸的多肽则显示了很强的抵抗蛋白酶降解能力。 纤溶酶和微纤溶酶的底物。微纤溶蛋白水解D-VLK-pNA的Km为0.361 /- 0.017 mM, kcat为40.3 /- 3.3 s&#xff0c;而原生纤溶蛋…

非零基础自学Golang 第12章 接口与类型 12.2 接口的创建与实现 12.2.2 接口赋值

非零基础自学Golang 文章目录非零基础自学Golang第12章 接口与类型12.2 接口的创建与实现12.2.2 接口赋值第12章 接口与类型 12.2 接口的创建与实现 12.2.2 接口赋值 如果用户自定义的类型实现了某个接口类型所声明的一组方法&#xff0c;那么这个用户定义的类型的值就可以赋…

2021遥感应用组三等奖:基于PolSAR和高光谱遥感的黄河口湿地协同分类研究

作品介绍 一、作品概述 受人类活动和气候变化的影响,滨海湿地正经历着显著的变化。滨海湿地生态系统的监测具有重要的现实意义。同时,随着卫星遥感技术的快速发展,可以利用高空间分辨率、高光谱分辨率和高时间分辨率的多源数据对滨海湿地进行高精度分类。 本作品利用珠海1…

磨金石教育摄影技能干货分享|优秀手机摄影作品欣赏

在摄影中&#xff0c;动物摄影并不好拍&#xff0c;因为动物的姿态&#xff0c;所处的环境都不是人所能控制。所以需要摄影师们提早调整好参数&#xff0c;耐心的等待和观察。而且要反复多拍&#xff0c;才能得到心仪的照片。 这些还只是普通的动物摄影&#xff0c;还有难度更高…

sg90舵机基本认知

什么是舵机&#xff1a; 如下图所示&#xff0c;最便宜的舵机sg90&#xff0c;常用三根或者四根接线&#xff0c;黄色为PWM信号控制 用处&#xff1a;垃圾桶项目开盖用、智能小车的全比例转向、摄像头云台、机械臂等 常见的有0-90、0-180、0-360 怎末控制电机&#xff1f; …