最近发现youtube的证书使用了新的椭圆曲线算法,于是我也想折腾弄了一下。
1.首先需要生成椭圆曲线算法的密钥 命令

openssl ecparam -genkey -name secp384r1 | sudo openssl ec -out private.key

如果已经有密钥可以跳过这步,我使用的算法是secp256r1
2.接下来需要安装certbot,这部不多说了。
3.需要创建配置文件如 cert.conf

[req]
distinguished_name = req_distinguished_name
req_extensions = v3_req
 
[req_distinguished_name]
 
[v3_req]
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = @alt_names
 
[alt_names]
DNS.1 = t2t2.cc
DNS.2 = www.t2t2.cc
DNS.3 = jason19659.pw
DNS.4 = www.jason19659.pw

DNS写自己的域名,然后保存为文件
4.

openssl req -new -sha256 -key private.key -out public.csr -subj "/C=IN/ST=Goa/L=Ponda/O=Priolkar Elf/CN=t2t2.cc" -config cert.conf
 

生成csr.
5.生成证书 命令:

letsencrypt certonly --hsts -w /var/www/blog/ -d t2t2.cc -d jason19659.pw --email jason19659@163.com --csr "public.csr"
 
 

-d 为需要生成证书的域名 -w是网站根目录,可以直接访问到的 –csr是csr文件位置。
6.生成之后 private是ssl_certificate_key。

– Congratulations! Your certificate and chain have been saved at:
/ssl/t2t2.cc/0001_chain.pem

生成之后会提示ssl_certificate在哪