使用openssl生成自签证书使项目支持https

使用openssl生成自签证书使项目支持https

生成CA证书

  1. 创建私钥 openssl genrsa -out ca-key.pem 1024
  2. 创建证书请求 openssl req -new -out ca.csr -key ca-key.pem
  3. 之后按个人的实际情况,填写信息 (这些信息会标明在证书里面)
  4. 自签署证书 openssl x509 -req -in ca.csr -out ca.cer -signkey ca-key.pem -days 3650

生成server证书

  1. 生成server证书 openssl genrsa -out server-key.pem 1024
  2. 创建证书请求 openssl req -new -out server-req.csr -key server-key.pem
  3. 根据个人的实际情况,填写信息
  4. 自签署证书
    openssl x509 -req -in server-req.csr -out server-cert.pem -signkey server-key.pem -CA ca.cer -CAkey ca-key.pem -CAcreateserial -days 3650
  5. 之后更改 server-cert.pem的后缀 server-cert.CER (不改也可以,这只是俩种不同的编码)

这样之后 server-cert.CER为自签证书,且包含公钥,server-key.pem为私钥。可以在项目中直接使用,更改后项目就可以支持https请求了

go func() {
   if err := srv.ListenAndServeTLS("server-cert.CER路径", "server-key.pem路径"); err != nil && err != http.ErrServerClosed {
      log.Fatalf("listen: %s\n", err)
   }
}()

简单版本

  1. 生成私钥
    openssl genrsa -out server.key 2048

  2. 生成 CSR (Certificate Signing Request)
    openssl req
    -subj “/C=CN/ST=BeiJing/L=BeiJing/O=XXX/OU=XXX/CN=XXX”
    -new
    -key server.key
    -out server.csr

  3. 生成自签名证书
    openssl x509
    -req
    -days 3650
    -in server.csr
    -signkey server.key
    -out server.crt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值