# 安装 certbot
apt update
apt install certbot
本操作需要在服务器上执行
# 关闭占用 80 端口的程序
# 自动申请证书向导
certbot certonly --standalone
# 域名需要绑定到服务器IP
# 多个域名请使用空格分开 不支持泛解析
使用自动向导申请的证书,可以在证书即将到期时,很方便的进行自动续签。
执行完成后,证书和相关文件已保存在:
/usr/local/etc/letsencrypt/live/yourdomain.com 目录下
fullchain.pem # 完整的证书链
privkey.pem # 私钥
本操作可以不绑定域名,不在服务器上执行
但需要通过 DNS 的 TXT 记录验证
# 建立专用目录
cd /home
mkdir ssl
cd ssl
mkdir feiyu.me
cd feiyu.me
rm *.*
# 生成私钥
openssl ecparam -genkey -name prime256v1 | openssl ec -out key.pem
# 私钥 name 可选项还有 secp384r1 但通常认为 256位 已足够安全
# 制作单域名的 csr (不推荐)
openssl req -new -sha256 -key key.pem -out my.csr
# 制作带有 SAN 扩展的 csr
# C=国家或地区缩写/ST=省份/L=市/O=公司名/OU=部门名称/CN=主域名
# DNS 可以设置多个域名 请根据自己的情况进行修改
openssl req -new -sha256 -key key.pem -subj "/C=CN/ST=Zhejiang/L=Jinhua/O=Company/OU=Department/CN=feiyu.me" -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:feiyu.me,DNS:*.feiyu.me")) -out my.csr
# 申请证书
certbot certonly -d feiyu.me -d *.feiyu.me --csr my.csr --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory
# 更名
mv 0001_chain.pem fullchain.pem
ECC 证书及密钥 已保存在
/home/ssl/feiyu.me 目录下
fullchain.pem # 完整的证书链
key.pem # 私钥
虽然现在很多网站上都可以简单、快速的申请 SSL证书,但是,如果可以的话,私钥文件还是由自己生成,自己保管比较好。
当然,对于不喜欢折腾的同学来说,caddy 也许是一个更好的选择。
© 2020 飞鱼的博客