Let’s Encrypt 是一个免费 SSL 证书发行项目,自动化发行证书,证书有 90 天的有效期。于是有了另外一个项目可以自动安装,自动续期。

直接上网站

选择 WEB 服务器版本,系统版本,然后执行脚本即可。

执行完成之后执行 certbot run 跟着步骤就行了。

crontab -e 编辑文件

0 0 1 * * /usr/bin/certbot renew --force-renewal

定时每天检查,如果要过期则自动延期。

指定域名

使用 -d 来指定域名

certbot --nginx -d yourdomain.com

acme.sh

acme.sh 是使用 Shell 编写的 acme 客户端,用来申请 Let’s Encrypt 证书。

curl  https://get.acme.sh | sh

原理

certbot 做了什么

listen 443 ssl;
ssl_certificate /path/to/pem;
ssl_certificate_key /path/to/pem;
include /path/to/ssl.conf;
ssl_dhparam /path/to/pem;  # 参数,加密强度
ssl_session_cache shared:le_nginx_SSL:1m;
ssl_session_timeout 1440m;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;

ssl_ciphes "..." # 安全套件