新安装方法 ubuntu20.04 2022/11/3
sudo snap install core; sudo snap refresh core
sudo snap install --classic certbot
sudo certbot --nginx
无80端口情况下使用方法
以下为老内容
老安装方法 ubuntu18
sudo add-apt-repository ppa:certbot/certbot #1
sudo apt update #2
sudo apt install python-certbot-nginx #3
sudo certbot #4
步骤#1
:
添加certbot
的相关源。如果有错误说明你没装software-properties-common
,请sudo apt install software-properties-common
。
步骤#3
:
如果你用的Apache,估计是执行sudo apt install python-certbot-apache
步骤#4
:
便开始自动生成ssl证书了,该工具会自动扫描Nginx配置,自动化的生成ssl证书,期间会询问你几个很简单的问题,请自行用翻译工具。最后一步会问你是否修改成强制跳转https,可以直接选1
。他会去修改Nginx配置,但有可能会出锅,建议再回头看下Nginx的配置。
比如对我的配置修改情况:
他在我的listen80配置文件下加了如下几行:
ssl_certificate /etc/letsencrypt/live/jszx.zj.cn/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/jszx.zj.cn/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
小tips
建议写一个最简单的非ssl的server,然后选1让他自动帮你修改,接着再补充需要的内容。比如下面的这种最简单的server定义:
server {
listen 80;
server_name example.zj.cn;
}
关于定期ssl更新
其实这并不是永久的ssl,需要每个三个月执行certbot renew
,但是你可以用crontab
定期脚本辅助啊。。