使用certstrap快速生成自签名证书

举报
yd_238926406 发表于 2023/08/09 21:20:50 2023/08/09
【摘要】 简介certstrap https://github.com/square/certstrap 是一个自签名证书生成工具,相比 openssl 来说更简易好用。 安装安装要求:Go 1.18+git clone https://github.com/square/certstrapcd certstrapgo buildmv certstrap /usr/local/bin/certstr...

简介

certstrap https://github.com/square/certstrap 是一个自签名证书生成工具,相比 openssl 来说更简易好用。

安装

安装要求:Go 1.18+

git clone https://github.com/square/certstrap
cd certstrap
go build
mv certstrap /usr/local/bin/
certstrap -V

用法

1. 生成 CA 根证书

# 会在当前目录下创建一个新的out目录,生成的证书都在该目录下
certstrap init --common-name "ExampleCA" --expires "20 years"

2. 生成 服务端证书

# 创建CSR, 即证书签名请求
certstrap request-cert -cn server -ip 127.0.0.1 -domain "*.example.com"

# 生成CSR之后,通过CA证书进行签名。签名后的证书位于:out/server.crt
certstrap sign server --CA ExampleCA

3. 生成 客户端证书

企业内部集群,通常为了保证服务之间的安全行,对客户端请求需要进行双向验证。这个时候就需要客户端也提供证书

# 创建CSR
certstrap request-cert -cn client

# 签名
certstrap sign client --CA ExampleCA

4. 生成 PKCS 格式证书

生成PKCS格式的证书可以直接点击安装到系统证书簇中,方便一些应用(浏览器等)的使用。

openssl pkcs12 -export -out client.p12 -inkey out/client.key -in out/client.crt -certfile out/ExampleCA.crt

使用 certigo 查询证书信息

# 安装
go install github.com/square/certigo@latest

# 查询证书的具体信息
certigo dump out/server.crt
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。