OpenSSL 1.0.0生成p12、jks、crt等格式证书的命令个过程

此生成的证书可用于浏览器、java、tomcat、c++等。在此备忘!

1.创建根证私钥
命令:
openssl genrsa -out root-key.key 1024

2.创建根证书请求文件
 命令:
openssl req -new -out root-req.csr -key root-key.key -keyform PEM

3.自签根证书
命令:
 openssl x509 -req -in root-req.csr -out root-cert.cer -signkey root-key.key -CAcreateserial -days 3650

4.导出p12格式根证书
命令:
openssl pkcs12 -export -clcerts -in root-cert.cer -inkey root-key.key -out root.p12

5.生成root.jks文件
keytool -import -v -trustcacerts -storepass 123456 -alias root -file root-cert.cer -keystore

root.jks

生成客户端文件:
1.生成客户端key
openssl genrsa -out client-key.key 1024
2.生成客户端请求文件
openssl req -new -out client-req.csr -key client-key.key
3.生成客户端证书(root证书,rootkey,客户端key,客户端请求文件这4个生成客户端证书)
openssl x509 -req -in client-req.csr -out client-cert.cer -signkey client-key.key -CA root-cert.cer

-CAkey root-key.key -CAcreateserial -days 3650
4.生成客户端p12格式根证书
openssl pkcs12 -export -clcerts -in client-cert.cer -inkey client-key.key -out client.p12

客户端jks:
 keytool -import -v -trustcacerts -storepass 123456 -alias client -file client-cert.cer -keystore

client.jks

生成服务端文件:
1.生成服务端key
openssl genrsa -out server-key.key 1024
2.生成服务端请求文件
openssl req -new -out server-req.csr -key server-key.key
3.生成服务端证书(root证书,rootkey,客户端key,客户端请求文件这4个生成客户端证书)
openssl x509 -req -in server-req.csr -out server-cert.cer -signkey server-key.key -CA root-cert.cer

-CAkey root-key.key -CAcreateserial -days 3650
4.生成服务端p12格式根证书
openssl pkcs12 -export -clcerts -in server-cert.cer -inkey server-key.key -out server.p12

服务端JKS
 keytool -import -v -trustcacerts -storepass 123456 -alias server -file server-cert.cer -keystore

server.jks

无密码key命令:
openssl rsa -in client-key.key -out client-key.key.unsecure

时间: 2024-10-14 08:33:39

OpenSSL 1.0.0生成p12、jks、crt等格式证书的命令个过程的相关文章

linux下生成https的crt和key证书

今天在配置kibana权限设置时,kibana要求使用https链接. 于是总结了一下linux下openssl生成 签名的步骤: x509证书一般会用到三类文,key,csr,crt Key 是私用密钥openssl格,通常是rsa算法. Csr 是证书请求文件,用于申请证书.在制作csr文件的时,必须使用自己的私钥来签署申,还可以设定一个密钥. crt是CA认证后的证书文,(windows下面的,其实是crt),签署人用自己的key给你签署的凭证.  1.key的生成  openssl ge

Cer Crt Pem Pfx 证书格式转换

1.从pfx格式的证书提取出密钥和证书set OPENSSL_CONF=openssl.cnfopenssl pkcs12 -in my.pfx -nodes -out server.pemopenssl rsa -in server.pem -out server.key openssl x509 -in server.pem -out server.crtPEM格式的证书与DER格式的证书的转换openssl x509 -in cert.pem -inform PEM -out cert.d

在 Windows下用 Visual Studio 编译 OpenSSL 1.1.0

到OpenSSL官方网站下载OpenSSL源代码包 1.下载 openssl-1.1.0.tar.gz 2.安装 ActivePerl, 可以到http://www.activestate.com/activeperl/downloads下载最新版本, 需要用到 perl 解释器. 注:Perl 最低版本要求5.10以上,Windows XP用户最后支持版本ActivePerl 5.20.2.2002 版本 3.使用 VS2010 下的 Visual Studio 2010 Command Pr

ExtJs 4.0 动态生成Grid

每写一篇文章都是一部血泪史啊.最近公司的需求要是使用到Ext的动态生成Grid,公司用的是4.0,由于版本问题在网上找了很多都不实用,所以自己研究了下. 现在给大家分享出来. 后台Json: callback内容: 1 callback : function(options, success, response) { 2 alert(response.responseText); 3 var r = Ext.decode(response.responseText); 4 if ("3"

vue2.0 自定义 生成二维码(QRCode)组件

1.自定义 生成二维码组件 QRCode.vue <!-- 生成二维码 组件 --> <template> <canvas class="qrcode-canvas" :class="{show: show}" :style="{height: size + 'px', width: size + 'px'}" :height="size" :width="size" ref=

【python3】 django2.0 在生成数据库表时报错: TypeError: __init__() missing 1 required positional argument: &#39;on_delete&#39;

python: 3.6.4 django: 2.0 models.py 代码如下 # coding: utf-8 from django.db import models from django.contrib.auth.models import User # Create your models here. class Category(models.Model): name = models.CharField(max_length=100) class Tag(models.Model)

dyld: Library not loaded: /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib

问题描述: 本地想看下php的版本 执行php -v ,出现如下错误: dyld: Library not loaded: /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib Referenced from: /usr/local/bin/php Reason: image not found 网上找了各种办法: 用install_name_tool的方式,动态修改依赖的版本,提示can't open input file: /usr/local/b

Rails 4.0.0 开发环境一切正常,到生成环境发现 无法找到 css 和 js

# Production  冰山一角的悲剧啊 Started GET "/discount_service/assets/admin.js?body=1" for 127.0.0.1 at 2014-05-23 14:50:24 +0800 ActionController::RoutingError (No route matches [GET] "/discount_service/assets/admin.js"): actionpack (4.0.0) li

java题求代码,4、现在有如下的一个数组: int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5} 要求将以上数组中值为0的项去掉,将不为0的值存入一个新的数组,生成的新数组为: int newArr[]={1,3,4,5,6,6,5,4,7,6,7,5}

public class TEST { public static void main(String[] args) { int [] oldArr= {1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5}; int [] newArr= new int[oldArr.length] ; int n=0; for (int i=0;i<oldArr.length;i++) { if(oldArr[i]==0) {} else { newArr[n]=oldArr[i]; n++; }