如何生成自己的根证书

栏目: 编程工具 · 发布时间: 7年前

内容简介:由于公司研发人员增加,测试服务器不够用了,所以加了新服务器,新服务器的https证书就成问题了,总不能每次新增服务器都要重新生成https证书吧,而且还得让全公司研发都信任一遍,那是相当费事了。公司自己当证书颁发机构,所有人将公司设为受信任的证书颁发机构,这样公司颁发的所有证书就会被自动信任什么是CA?数字证书认证机构(英语:Certificate Authority,缩写为CA),下面是生成ca的方法

背景

由于公司研发人员增加,测试服务器不够用了,所以加了新服务器,新服务器的https证书就成问题了,总不能每次新增服务器都要重新生成https证书吧,而且还得让全公司研发都信任一遍,那是相当费事了。

解决方案

公司自己当证书颁发机构,所有人将公司设为受信任的证书颁发机构,这样公司颁发的所有证书就会被自动信任

生成rootCA

什么是CA?数字证书认证机构(英语:Certificate Authority,缩写为CA),下面是生成ca的方法

生成私钥

openssl genrsa -des3 -out myCA.key 2048

命令执行过程中会要求输入密码,由于是测试环境,对安全性没那么高,可以随便输一个。

生成rootCA

openssl req -x509 -new -nodes -key myCA.key -sha256 -days 36500 -out myCA.pem

执行过程中会要求输入各种信息,按要求输入即可

完成

现在我们有myCA.pem,这就root CA。

然后在操作系统里信任myCA.pem。

使用rootCA生成证书

生成私钥

openssl genrsa -out dev.com.key 2048

生成签名请求

openssl req -new -key dev.com.key -out dev.com.csr

创建配置文件dev.com.ext

authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names

[alt_names]
DNS.1 = dev.com

最后生成证书

openssl x509 -req -in dev.com.csr -CA myCA.pem -CAkey myCA.key -CAcreateserial \
-out dev.com.crt -days 1825 -sha256 -extfile dev.com.ext

现在有3个文件dev.com.key(私钥),dev.com.csr(证书签名请求),dev.com.crt(证书)

nginx配置

ssl_certificate      dev.com.pem;
ssl_certificate_key  dev.com.key;

此文参考了这篇文章


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Unity游戏设计与实现

Unity游戏设计与实现

[日]加藤政树 / 罗水东 / 人民邮电出版社 / 2015-2 / 79.00元

本书出自日本知名游戏公司万代南梦宫的资深开发人员之手,面向初级游戏开发人员,通过10个不同类型的游戏实例,展示了真正的游戏设计和实现过程。本书的重点并不在于讲解Unity的各种功能细节,而在于核心玩法的设计和实现思路。每个实例都从一个idea 开始,不断丰富,自然而然地推出各种概念,引导读者思考必要的数据结构和编程方法。掌握了这些思路,即便换成另外一种引擎,也可以轻松地开发出同类型的游戏。 ......一起来看看 《Unity游戏设计与实现》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具