附件下载:
41efceea3de24634823f0b95ceef2f38.png null
Certbot 是一个由 Let's Encrypt 开发的免费开源工具,用于自动化部署和管理 SSL/TLS 证书。它具有以下几个显著的好处:
- 免费证书:Certbot 使用 Let's Encrypt 作为其证书颁发机构,Let's Encrypt 提供免费的 SSL/TLS 证书。这意味着您可以使用 Certbot 轻松获取和更新有效的证书,而无需支付费用。
- 自动化:Certbot 可以自动化证书签发和更新的过程,减少了手动操作的工作量和错误的风险。您可以设置定期任务,让 Certbot 自动检查证书的到期日期,并在需要时自动进行更新。
- **安全性:使用 SSL/TLS 证书可以加密网站与用户之间的通信,确保数据在传输过程中的安全性。Certbot 简化了证书的获取和管理过程,使您能够快速轻松地为您的网站启用 HTTPS,提供更安全的访问方式。 **话不多说,我们今天就来讲一下在nginx环境上的安装和使用certbot
**要安装certbot,我们需要先安装snapd 。需要依次执行以下几条命令,执行完最后一步,需要重新登录服务器或者重启机器让snap生效。 **
接下来,来安装certbot
- **执行安装命令 **
- **设置软链接 **
到这里,certbot已经安装好了,简单介绍一下它的2个工作模式
1、
运行此命令获取证书,并让Certbot自动编辑您的nginx配置以提供证书,在一个步骤中打开HTTPS访问。
2、
**如果你感觉更保守,只需要证书。其他想手工修改nginx配置,运行这个命令。 **
如果报错:
由于没有将nginx放到环境变量中,设置nginx软连接
当使用 which nginx 时,报错:
执行which nginx显示如下
说明在 (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin) 这些路径下都没有nginx的可执行文件,所以执行不了which,解决办法也可以采取上面的解决方案
报错2:
这个错误表明Nginx配置文件中使用了ssl
参数,但是Nginx在编译时没有包含ngx_http_ssl_module模块。ngx_http_ssl_module是Nginx的一个标准模块,用于支持HTTPS请求,即通过SSL/TLS协议来加密网站内容的传输。
解决方法:
如果你是从源代码编译Nginx,确保在编译时添加--with-http_ssl_module
选项。例如:
在这里,我采用第2种方式。
(1)执行命令后他会让你输入邮件地址
之后后certonly会读取我们的nginx配置文件,并询问哪些域名需要生成证书