制作SSL证书
上一节介绍了OpenSSL的目录结构,本节介绍一下SSL证书的制作。
OpenSSL安装后建议把其中的bin目录添加到系统环境变量中,方便以后操作。
建立一个新的目录SSL专门用来制作证书。
建立证书目录
我们使用默认配置openssl.cfg,那么就要建立配置中要求的目录demoCA,使用脚本CA.pl
CA.pl -newca

把OpenSSL安装目录下的serial文件拷贝到demoCA目录下即可。
我们不使用demoCA提供的根证书,自己制作根证书,创建根证书的密钥文件pmroot.key
ps: 必须输入密钥
openssl genrsa -des3 -out pmroot.key

创建根证书的申请文件pmroot.csr
openssl req -new -key pmroot.key -out pmroot.csr

创建一个为期十年的根证书pmroot.crt
openssl x509 -req -days 3650 -sha1 -extensions v3_ca -signkey pmroot.key -in pmroot.csr -out pmroot.crt

生成服务器端密钥文件pmserver.key
openssl genrsa -des3 -out pmserver.key

生成服务器端证书申请文件pmserver.csr
openssl req -new -key pmserver.key -out pmserver.csr

若需要客户端证书,安装上述证书操作分别生成pmclient.key和pmclient.csr即可。
生成的csr文件必须有CA的签名才可形成证书,用前面生成的CA证书为pmserver.csr,pmclient.csr文件签名:
openssl ca -days 3650 -in pmserver.csr -out pmserver.crt -cert pmroot.crt -keyfile pmroot.key
openssl ca -days 3650 -in pmclient.csr -out pmclient.crt -cert pmroot.crt -keyfile pmroot.key


这样我们需要的全部文件便生成了。
另:client使用的文件有:pmroot.crt,pmclient.crt,pmclient.key
server使用的文件有:pmroot.crt,pmserver.crt,pmserver.key
crt文件和key文件可以合到一个pfx文件里。
合并命令:openssl pkcs12 -export -in pmserver.crt -inkey pmserver.key -out pmserver.pfx
制作SSL证书的更多相关文章
- 在macOS平台下制作SSL证书,免费域名通配符证、单域名证书、多域名证书教程
1.安装 home-brew 2.安装 certbot 在终端执行下面命令 brew install certbot 3.制作SSL证书 第一步: 在终端执行下面命令 sudo certbot cer ...
- 简单的制作ssl证书,并在nginx和IIS中使用
2020年最后一篇博文收官,提前祝各位园友新年快乐 现在的后端开发,动不动就是需要https,或者说是需要ssl证书,既然没有正版的证书,那么我们只能自己制作ssl的证书了. 说明:证书的制作采用的是 ...
- openssl 自己制作ssl证书:自己签发免费ssl证书,为nginx生成自签名ssl证书
server { listen 80; listen 443 ssl; server_name ~^((cloud)|(demo-cloud)|(demo2-cloud)|(approval1))(( ...
- 自己制作ssl证书:自己签发免费ssl证书,为nginx生成自签名ssl证书
这里说下Linux 系统怎么通过openssl命令生成 证书. 首先执行如下命令生成一个key openssl genrsa -des3 -out ssl.key 1024 然后他会要求你输入这个ke ...
- 自己制作ssl证书
首先执行如下命令生成一个key openssl genrsa -des3 -out ssl.key 1024 然后他会要求你输入这个key文件的密码.不推荐输入.因为以后要给nginx使用.每次r ...
- tomcat安装自制作ssl证书
1.执行命令 C:\servers\apache-tomcat-8.0.27>keytool -genkey -alias tomcat -keyalg RSA -keypass pass123 ...
- HTTPS那些事(二)SSL证书(转载)
原创地址:http://www.guokr.com/post/116169/ 从第一部分HTTP工作原理中,我们可以了解到HTTPS核心的一个部分是数据传输之前的握手,握手过程中确定了数据加密的密 ...
- HTTPS那些事(二)SSL证书
转自:http://www.guokr.com/post/116169/ 从第一部分HTTPS原理中, 我们可以了解到HTTPS核心的一个部分是数据传输之前的握手,握手过程中确定了数据加密的密码.在握 ...
- 自己签发免费ssl证书
自己制作ssl证书:自己签发免费ssl证书,为nginx生成自签名ssl证书 这里说下Linux 系统怎么通过openssl命令生成 证书. 首先执行如下命令生成一个keyopenssl genrsa ...
随机推荐
- python2.7中使用mysql (windows XP)
一.首先下载mysql—python模块,下载完毕之后会有一个MySQL-python-1.2.3.win32-py2.7.exe文件,点击安装一路next,ok. 二.编辑配置文件(setting. ...
- hdu 2289 Cup (二分法)
http://acm.hdu.edu.cn/showproblem.php?pid=2289 二分法解题. 这个题很恶心...一开始测试样例都不能过,这个π一开始取3.1415926结果是99.999 ...
- VS2013中直接浏览网页显示“无法显示此页”的可能原因
今天在VS2013里面新建了一个空的web应用程序WebApplication1,然后新建了一个 WebForm1.aspx 直接浏览WebForm1.aspx后,网页直接显示: 在网上查询了写资料, ...
- Hosting Multiple Service Implementations On The Same Port With WCF
Hosting Multiple Service Implementations On The Same Port With WCF Recently I have been playing arou ...
- bzoj1832
其实这道题是和bzoj1787一样的但我用bzoj1787MLE了,于是正好练一下树上倍增 type node=record po,next:longint; end; ..] of node; an ...
- PHP SSL Module "subjectAltNames"空字节处理安全绕过漏洞
漏洞版本: PHP 5.3.27 PHP 5.4.17 PHP 5.5.1 漏洞描述: Bugtraq ID:61776 PHP是一种HTML内嵌式的脚本语言 PHP SSL模块不正确处理服务器SSL ...
- JavaScript高级程序设计14.pdf
继承,ECMAScript只支持实现继承,而且其实现继承主要是依靠原型链来实现的 构造函数.原型.和实例的关系:每个构造函数都有一个原型对象,每个原型对象都包含一个指向构造函数的指针,每个实例都包含一 ...
- C# 模拟用户登录
, data.Length); newStream.Close(); request.CookieContainer ...
- 一个很cool的C#的高性能数学库
High Performance Math Library for C# and .NET是一个很cool的C#的高性能数学库,3D效果也很不错,下图是首页上的一个例子.他也有一个交互的网页,你可以自 ...
- 如何选择NoSql数据库
How to choose a No Sql database 介绍了一下怎么选择一个No Sql数据库,下面简单翻译一下重点. No Sql的数据库可以分为如下4类: Key-Value数据库 数据 ...