主页 > 创业  > 

Letsencrypt+certbot为域名免费配置ssl

Letsencrypt+certbot为域名免费配置ssl
1、基础概念

Let’s Encrypt 是一个提供免费 SSL/TLS 证书的认证机构,它的目标是让互联网上的通信更加安全,特别是普及 HTTPS。通过 Let’s Encrypt 提供的证书,网站可以使用加密连接,保护用户的数据传输。

Certbot 是一个由电子前沿基金会(EFF)开发的开源工具,它可以自动化获取和更新 Let’s Encrypt 证书的过程。简而言之,Certbot 是用来与 Let’s Encrypt 的服务进行交互,帮助网站管理员轻松地申请、安装和更新 SSL 证书。

前提条件:

首先,配置自己服务器的域名,有一个可以公共访问的域名,然后关联配置到服务器,这部分此文不做赘述。确认适合自己系统的具体命令,以下步骤以 Ubuntu 的系统为例。 2、安装 Certbot 插件

先更新系统的包管理器

sudo apt update

确保你的服务器上已经安装并运行 Nginx: 检查 Nginx 是否安装:

nginx -v

如果未安装,可以使用以下命令安装:

sudo apt install nginx

启动 Nginx 并设置开机自启:

sudo systemctl start nginx sudo systemctl enable nginx

安装 Certbot 的 Nginx 插件 对于基于 Debian/Ubuntu 的系统,需要安装 python3-certbot-nginx 包:

sudo apt install python3-certbot-nginx

重新运行 Certbot 插件安装完成后,重新运行 Certbot 以获取并配置 SSL 证书:

sudo certbot --nginx

按照提示完成证书的获取和配置过程。Certbot 会自动检测你的 Nginx 配置,并为指定的域名安装 SSL 证书。

3、自动续期

虽然 Certbot 通常会自动配置续期,手动测试续期过程以确保一切正常:

sudo certbot renew --dry-run

如果没有错误提示,说明自动续期配置正确。

此外,既然定时器已设置为自动执行,如果希望验证是否能够按时触发,可以等到预定的时间,或者手动触发服务来测试:这将立即触发 certbot 执行证书更新操作。

sudo systemctl start certbot.service

检查 certbot 的服务状态:

sudo systemctl status certbot.timer

查看当前证书的状态以及是否即将过期:

sudo certbot certificates

4、手动续期

运行命令

sudo certbot renew

等待自动续期完成即可

5、开放80端口、确保nginx配置

否则就会报错

确保服务器可以访问端口 80 和 443: sudo ufw allow 'Nginx Full'

想要 Certbot 自动续期成功,需要开放80端口 443端口 这是因为certbot 在进行域名验证时通常使用 HTTP 或 HTTPS 服务来验证所有权。如果服务器上没有正确运行 HTTP (80端口) 或 HTTPS (443端口) 服务,验证过程也会失败。

Failed to renew certificate xxx with error: Some challenges have failed. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - All renewals failed. The following certificates could not be renewed: /etc/letsencrypt/live/xxxx /fullchain.pem (failure) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 renew failure(s), 0 parse failure(s) 检查 Nginx 配置是否正确: 在某些情况下,Nginx 的配置文件可能有误,导致 Certbot 无法正确配置 SSL。可以使用以下命令测试 Nginx 配置: sudo nginx -t

如果有错误,请根据提示修正配置文件。

标签:

Letsencrypt+certbot为域名免费配置ssl由讯客互联创业栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Letsencrypt+certbot为域名免费配置ssl