背景
由于在本地需要搭建steam反向代理服务器,因此需要自签CA证书。
本实验使用开源工具OpenSSL,使用openssl version命令查看当前版本为1.1.1l
实验过程
在腾讯云服务器使用OpenSSL生成私钥文件和CA证书文件,证书当中包含公钥
私钥
openssl genrsa -des3 -out CA.key 2048
如图所示,私钥生成需要输入4-1023位的密码且不可省略
证书
- 使用私钥生成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 商标
- 命令行生成CA证书
openssl req -x509 -new -nodes -key CA.key -sha256 -days 36500 -out CA.pem -config root.conf
由于默认值已经在配置文件中被填写,所以不需要填写一路回车即可
查看证书信息
将生成的证书上传或者直接粘贴证书内容到MySSL,来查看证书信息
后记
目前对于OpenSSL的使用还不熟悉,对于各个参数的含义不甚了解;
同时要进一步了解加密套件,本次使用的是RSA密码体制,而椭圆曲线密码速度更快。证书可以进一步优化。