安装certbot
# sudo apt update && sudo apt install certbot
获取证书
安装好管理工具之后, 我们需要申请证书下来, 这里我的web服务器是NGINX, 并且我没有网站的静态目录, 所以我使用这个命令申请:
# sudo certbot certonly --standalone -d xxx.com -d www.xxx.com
如果你的网站有静态目录的话, 可以把–standalone改成–webroot并且加上-w参数申请, 类似这样:
# sudo certbot certonly --webroot -w /srv/www/www.xxx.com -d xxx.com -d www.xxx.com
在你使用–standalone申请证书的时候需要关闭nginx, 因为certbot会启用443端口校验你的域名信息, 如果nginx没有关闭, 会导致端口占用。
# sudo services nginx stop
配置证书
申请证书完成之后证书会存在在/etc/letsencrypt/live/目录, 我们查看一下没有问题后打开nginx的配置文件修改证书载入路径:
server {
server_name www.xx.com;
error_log /var/log/nginx/www.xx.error.log ;
access_log /var/log/nginx/ws.xx.access.log;
# 域名的ssl认证
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/www.xx.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.xx.com/privkey.pem; Certbot
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
重启nginx 输入网址访问一下, 证书启用是否成功: https://xxx.com