一、说明

使用自签ca证书,给二级ca签发生成的证书默认不具备给三级证书签发的能力。

需要指定 -extensions v3_ca参数。

详细参考:http://blog.csdn.net/howeverpf/article/details/21622545?reload

二 相关命令

// 生成顶级CA的公钥证书和私钥文件,有效期10年(RSA 1024bits,默认)

openssl req -new -x509 -days 3650 -keyout CARoot.key -out CARoot.crt

// 为顶级CA的私钥文件去除保护口令

openssl rsa -in CARoot.key -out CARoot.key

// 为应用证书/中级证书生成私钥文件

openssl genrsa -out roota.key 1024

// 根据私钥文件,为应用证书/中级证书生成 csr 文件(证书请求文件)

openssl req -new -key roota.key -out roota.csr

// 使用CA的公私钥文件给 csr 文件签名,生成中级证书,有效期5年

openssl ca -extensions v3_ca -in roota.csr -out roota.crt -cert CARoot.crt -keyfile CARoot.key -days 1826 -policy policy_anything

//生成服务rootb

openssl genrsa -out rootb.key 1024

openssl req -new -key rootb.key -out rootb.csr

openssl ca -extensions v3_ca -in rootb.csr -out rootb.crt -cert CARoot.crt -keyfile CARoot.key -days 1826 -policy policy_anything

///生成服务roota-1

openssl genrsa -out roota-1.key 1024

openssl req -new -key roota-1.key -out roota-1.csr

openssl ca -in roota-1.csr -out roota-1.crt -cert roota.crt -keyfile roota.key -days 1826 -policy policy_anything

///生成p12

openssl pkcs12 -export -clcerts -in roota-1.crt -inkey roota-1.key -out roota-1.p12

//p12转jks

keytool -importkeystore -srckeystore roota-1.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore roota-1.jks

///生成客户端rootb-1

openssl genrsa -out rootb-1.key 1024

openssl req -new -key rootb-1.key -out rootb-1.csr

openssl ca -in rootb-1.csr -out rootb-1.crt -cert rootb.crt -keyfile rootb.key -days 1826 -policy policy_anything

///生成p12

openssl pkcs12 -export -clcerts -in roota-1.crt -inkey roota-1.key -out roota-1.p12

//p12转jks

keytool -importkeystore -srckeystore roota-1.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore roota-1.jks

//服务端导入信任

keytool -import -alias root -file CARoot.crt -keystore roota-1.jks

keytool -import -alias rootb -file rootb.crt -keystore roota-1.jks //报错不是x509格式

//转为x509

openssl x509 -in rootb.crt -out -rootb.cer

keytool -import -alias rootb -file rootb.cer -keystore roota-1.jks

//cn为ip地址172.20.186.196 roota-2

///生成服务roota-2

openssl genrsa -out roota-2.key 1024

openssl req -new -key roota-2.key -out roota-2.csr

openssl ca -in roota-2.csr -out roota-2.crt -cert roota.crt -keyfile roota.key -days 1826 -policy policy_anything

///生成p12

openssl pkcs12 -export -clcerts -in roota-2.crt -inkey roota-2.key -out roota-2.p12

//p12转jks

keytool -importkeystore -srckeystore roota-2.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore roota-2.jks

keytool -import -alias root -file CARoot.crt -keystore roota-2.jks

keytool -import -alias rootb -file rootb.cer -keystore roota-2.jks

python几多级证书_Openssl 生成多级证书相关推荐

  1. linux自动生成证书,Linux生成TLS证书

    安装acme.sh 证书的生成有许多方法,这里使用的是比较简单的方法:使用 acme.sh 脚本生成. 注意:针对debian9系统,在执行安装acme.sh脚本之前,需要提前安装必备软件包.不然会有 ...

  2. java生成数字证书_java生成数字证书方法

    Java 中生成数字证书也很简单的. 1.创建证书 Java 中的 keytool.exe (位于 JDKBin 目录下)可以用来创建数字证书,所有的数字证书是以一条一条(采用别名区别)的形式存入证书 ...

  3. java 生成https证书_java生成Https证书,及证书导入的步骤和过程

    原文参考:http://www.cnblogs.com/fron/p/https-20170111.html 以下是相关的Tomcat,JDK和Windows环境: Tomcat版本:tomcat-7 ...

  4. linux下keytool生成证书_Keytool生成https证书步骤0014

    首页切换到keytool工具的目录 该工具为tomcat自带,无需下载 $ cd /app/tomcat/tomcat1/lib 生成server key $ keytool -genkey -ali ...

  5. python acme_使用 acme-tiny 工具生成 Let's Encrypt 的免费 SSL 证书

    下载 acme-tiny 创建用户私钥和域名私钥 "创建用户私钥和域名私钥")创建用户私钥和域名私钥 mkdir -p /etc/ssl/letsencrypt/ cd /etc/ ...

  6. HTTPS-自己生成数字证书

    一.获取证书的途径 自签名证书,适用于开发者测试HTTPS,最快速的途径就是生成自签名证书,非常方便. Let's Encrypt证书,可以使用免费CA机构签发的证书. 使用收费CA机构签发的证书,如 ...

  7. java ca认证_java编程方式生成CA证书

    下面是java编程方式生成CA证书的代码,使用的是BC的provider.生成CA证书与生成普通证书的区别是:1,生成CA证书时,issuer和subject一致:2,在ContentSigner.b ...

  8. 安卓App生成签名证书,uniapp生成自有证书打包

    uniapp安卓打包生成自有证书,签名.从HBuilderX3.2.0及以上版本开始支持服务器生成证书(推荐这种方法),服务器生成一键操作,比较简单.自己一步一步操作相对还是比较麻烦的. 服务器生成证 ...

  9. http系列---OpenSSL生成根证书CA及签发子证书

    文章目录 1. 前言 2. 修改OpenSSL的配置 3. 生成根证书 4. 用根证书签发server端证书 5. 用根证书签发client端证书 6. 导出证书 7. 附项目证书目录 1. 前言 系 ...

最新文章

  1. 这5个数学猜想最早在30年前提出,如今AI证明它们都错了
  2. 如何编写高性能的C#代码(四)字符串的另类骚操作
  3. opencv计算两数组的乘积_#剑指Offer#12. 构建乘积数组
  4. BZOJ 2242: [SDOI2011]计算器 [快速幂 BSGS]
  5. java常见异常类图(分类了Error/RuntimeExecption、check Exception)
  6. 云效(原RDC)+ 容器服务完成持续集成
  7. 笑傲江湖手3D游服务器端文件,新笑傲江湖手游7月2日部分服务器数据互通预告...
  8. 【原创】全面剖析飞凌2440,6410开发板选型指南
  9. scala 模式匹配概念及用法示例
  10. jQuery 的filter(),not(),split()用法
  11. 解决win7 安装完jdk7后,再安装jdk8出现的问题
  12. 在fstab中使用UUID挂载
  13. awgn信道matlab,AWGN信道下数字通信系统的蒙特卡洛仿真(基于matlab).doc
  14. Pyecharts直角坐标系图:象形柱状图 PictorialBar
  15. flink(三):数据处理Transformation
  16. 三菱FX5U系列PLC控制10轴设备成套资料打包三菱FX5U控制10轴伺服的设备成套电气图纸
  17. Java:反射的常用用法,
  18. windows下操作Nginx基本命令
  19. Ubuntu操作系统输入法键位错乱解法记录(输入法无法正确打出~、等字符)
  20. 微信备份到云服务器失败是怎么回事,电脑微信备份连接失败的原因(解决利用电脑版微信备份的方法)...

热门文章

  1. python爬虫天气数据_python爬虫:天气数据的分析
  2. php mysql 批量insert_mysql批量插入数据方法
  3. std::wstring 转为 QString
  4. Setup Factory打包时实现第三方DLL文件的注册
  5. Android修改原生AlertDialog按钮的颜色大小边距位置以及标题居中等
  6. 动物克隆技术应用价值_虽然有了克隆技术为什么要进行克隆呢
  7. Android中.9.png图片的使用过程和原理
  8. UE4 PostProcessVolume 蓝图操作后期框
  9. Python--三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数...
  10. IntelliJ如何设置自动导包