背景

由于在本地需要搭建steam反向代理服务器,因此需要自签CA证书。

本实验使用开源工具OpenSSL,使用openssl version命令查看当前版本为1.1.1l

实验过程

在腾讯云服务器使用OpenSSL生成私钥文件和CA证书文件,证书当中包含公钥

私钥
openssl genrsa -des3 -out CA.key 2048

如图所示,私钥生成需要输入4-1023位的密码且不可省略

image-20221213220400981

证书
  1. 使用私钥生成CA证书,需要提前写好配置文件,否则在生成过程中需要在命令行中输入且无法很方便地修改。
[ req_distinguished_name ]
countryName                 = Country Name (2 letter code)
countryName_default         = CN
stateOrProvinceName         = State or Province Name (full name)
stateOrProvinceName_default = Shanghai
localityName                = Locality Name (eg, city)
localityName_default        = Shanghai
organizationName            = Organization Name (eg, company)
organizationName_default    = DamonLUX LLC
commonName                  = Common Name (e.g. server FQDN or YOUR name)
commonName_max              = 64
commonName_default          = DamonLUX Internet Authority CA

[ x509_ext ]
subjectKeyIdentifier   = hash
authorityKeyIdentifier = keyid,issuer
basicConstraints       = CA:TRUE
keyUsage               = digitalSignature, keyEncipherment, keyCertSign, cRLSign

[ req_ext ]
subjectKeyIdentifier = hash
basicConstraints     = CA:TRUE
keyUsage             = digitalSignature, keyEncipherment, keyCertSign, cRLSign

参数含义:

①countryName 国家

②stateOrProvinceName 省份

③localityName 城市

④organizationName 组织

⑤commonName 商标

  1. 命令行生成CA证书
openssl req -x509 -new -nodes -key CA.key -sha256 -days 36500 -out CA.pem -config root.conf

由于默认值已经在配置文件中被填写,所以不需要填写一路回车即可

image-20221213222140909

查看证书信息

将生成的证书上传或者直接粘贴证书内容到MySSL,来查看证书信息

image-20221213222630839

image-20221213222801289

后记

目前对于OpenSSL的使用还不熟悉,对于各个参数的含义不甚了解;

同时要进一步了解加密套件,本次使用的是RSA密码体制,而椭圆曲线密码速度更快。证书可以进一步优化。

参考

最后修改:2022 年 12 月 18 日
如果觉得我的文章对你有用,请随意赞赏