专栏首页服务端技术Nginx证书和Tomcat证书能相互转化吗,请看这里
原创

Nginx证书和Tomcat证书能相互转化吗,请看这里

【转载请注明出处】:https://blog.csdn.net/huahao1989/article/details/108292030

主流 Web 服务软件证书

一般来说,主流的 Web 服务软件,通常都基于 OpenSSL 和 Java 两种基础密码库。

  • TomcatWeblogicJBoss等Web服务软件,一般使用Java提供的密码库。通过Java Development Kit (JDK)工具包中的Keytool工具,生成Java Keystore(JKS)格式的证书文件
  • ApacheNginx等Web服务软件,一般使用OpenSSL工具提供的密码库,生成PEMKEYCRT等格式的证书文件。
  • IBM的Web服务产品,如WebsphereIBM Http Server(IHS)等,一般使用IBM产品自带的iKeyman工具,生成KDB格式的证书文件。
  • 微软Windows Server中的Internet Information Services(IIS)服务,使用Windows自带的证书库生成PFX格式的证书文件。

判断证书文件是文本格式还是二进制格式

您可以使用以下方法简单区分带有后缀扩展名的证书文件:

  • .DER.CER文件: 这样的证书文件是二进制格式,只含有证书信息,不包含私钥。
  • .CRT文件: 这样的证书文件可以是二进制格式,也可以是文本格式,一般均为文本格式,功能与 .DER.CER证书文件相同。
  • .PEM文件: 这样的证书文件一般是文本格式,可以存放证书或私钥,或者两者都包含。 .PEM 文件如果只包含私钥,一般用.KEY文件代替。
  • .PFX.P12文件: 这样的证书文件是二进制格式,同时包含证书和私钥,且一般有密码保护。

证书格式转换

image.png

上面这张图很直观的说明了各种证书之间转化的流程,只要每一步转化成功其他的转化都是每一步的组合。

JKS 和 PFX 相互转化

PFX格式证书文件和JKS格式证书相互转化可以使用JDK中自带的keytool工具。

将JKS格式转换成PFX格式

keytool -importkeystore -srckeystore server.jks -destkeystore server.pfx -srcstoretype JKS -deststoretype PKCS12

将PFX格式转换成JKS格式

keytool -importkeystore -srckeystore server.pfx -srcstoretype PKCS12 -srcstorepass {pfx-password} -destkeystore server.jks -deststoretype JKS -deststorepass {jks-password}  -alias {key-alias}

PFX 和 KEY&CRT 相互转化

PEM/KEY/CRT格式证书和PFX格式互相转换可以使用 OpenSSL工具。

将PFX转换为PEM/KEY/CRT

openssl pkcs12 -in server.pfx -nodes -out server.pem
openssl rsa -in server.pem -out server.key
openssl x509 -in server.pem -out server.crt

此转换步骤是专用于通过Keytool工具生成私钥和CSR申请证书文件的,并且通过此方法您可以在获取到PEM格式证书公钥的情况下分离私钥。

将PEM/KEY/CRT转换为PFX

openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt

> 欢迎关注 “后端老鸟” 公众号,接下来会发一系列的专题文章,包括Java、Python、Linux、SpringBoot、SpringCloud、Dubbo、算法、技术团队的管理等,还有各种脑图和学习资料,NFC技术、搜索技术、爬虫技术、推荐技术、音视频互动直播等,只要有时间我就会整理分享,敬请期待,现成的笔记、脑图和学习资料如果大家有需求也可以公众号留言提前获取。由于本人在所有团队中基本都处于攻坚和探路的角色,搞过的东西多,遇到的坑多,解决的问题也很多,欢迎大家加公众号进群一起交流学习。

【转载请注明出处】:https://blog.csdn.net/huahao1989/article/details/108292030

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 通过 Consul-Template 实现动态配置Nginx负载服务

    【转载请注明出处】:https://cloud.tencent.com/developer/article/1627963

    后端老鸟
  • 接入层限流之ngx_http_limit_req_module

    【转载请注明出处】:https://cloud.tencent.com/developer/article/1626336

    后端老鸟
  • 服务发现比较:Consul vs Zookeeper vs Etcd vs Eureka

    总的来看,目前Consul 自身功能,和 spring cloud 对其集成的支持都相对较为完善,而且运维的复杂度较为简单(没有详细列出讨论),Eureka 设...

    后端老鸟
  • 助力推进硬科技+传统产业,“江岛智立方·智享沙龙—硬科技赋能传统产业升级”落下帷幕 | 活动

    镁客网
  • 人工智能的领域5G「嵌入式人工智能」技术

    当今时代,是5G时代,嵌入式和人工智能都是热门话题,二者时长放在一起谈论。那么他们之间到底有着什么样的关系呢?

    用户7742714
  • AI正在这七大行业中崛起:场景分析及创投现状详解 | 附92页报告

    陈桦 编译自CB Insights 量子位 出品 | 公众号 QbitAI 人工智能正成为科技行业新的关键。尽管机器学习算法的出现已有几十年时间,但硬件处理能力...

    量子位
  • BTrace : Java 线上问题排查神器

    BTrace 是什么 BTrace 是检查和解决线上的问题的杀器,BTrace 可以通过编写脚本的方式,获取程序执行过程中的一切信息,并且,注意了,不用重启服务...

    古时的风筝
  • 一次sql注入引发的多个mysql进程锁住的问题(针对myisam)

    以前碰到过一个sql注入式攻击引发大量mysql进程被锁住的例子,现在分享给大家。当时数据表用的是myisam存储引擎。 基本知识点: InnoDB存储引擎既支...

    java达人
  • 数据结构与算法(一): 动态数组

    JavaEdge
  • vmware api开发之快照管理

    用户1057912

扫码关注云+社区

领取腾讯云代金券