首页 免费的SSL证书
文章
取消

免费的SSL证书

Let’s Encrypt

  Let’s Encrypt 是一个由非营利性组织 互联网安全研究小组(ISRG)提供的免费、自动化和开放的证书颁发机构(CA)。简单的说,借助 Let’s Encrypt 颁发的证书可以为我们的网站免费启用 HTTPS(SSL/TLS) 。Let’s Encrypt免费证书的签发/续签都是脚本自动化的,官方提供了几种证书的申请方式方法,官方推荐使用 Certbot 客户端来签发证书,这也是今天要分享的方式。

安装

  由于版本问题,现在网上很多的安装方式都已经过时了。这里分享的是新的方式,通过snap来安装certbot客户端。如果还没有snap,请根据自己的系统自行安装。

注:这个要在正式环境上安装,这种方式是自带验证功能的,他需要在服务器上增加文件来验证这个域名的所有权(会创建目录:/.well-known/acme-challenge/里面放一个文件作为验证文件)。而且这种方式是会自动更新的。

1
2
3
sudo snap install --classic certbot # 使用snap安装certbot,如果报找不到snap请先按照snap
sudo ln -s /snap/bin/certbot /usr/bin/certbot # 软链到PATH环境变量目录
sudo certbot --version  # 验证,如果出现形如certbot 2.9.0,说名安装正常。

获取证书

  获取证书也是比较方便的,但是手册写的相当复杂,根据不同情况要自己选择。比如支持apache、nginx、webroot、standalone、DNS plugins、manual。

  • apache:使用 Apache 自动获取和安装证书。

  • nginx:使用 Nginx 自动获取和安装证书。

  • webroot:通过写入 Webroot 目录来获取证书。

  • standalone:使用“独立”网络服务器来获取证书。需要端口 80 可用。这适用于没有网络服务器的系统,或者直接不支持或不需要本地网络服务器。

  • DNS plugins:此类插件可通过以下方式自动获取证书修改 DNS 记录以证明您可以控制领域。以这种方式进行域验证是从 Let’s 获取通配符证书的唯一方法。

  • manual:按照说明手动获取证书自己执行域验证。证书创建了这个方式不支持自动续订。可以通过提供身份验证来启用自动续订挂钩脚本来自动执行域验证步骤。

  可以看到支持6中方式获取证书。其实知道如何安装SSL证书的都可以明白,这几种办法都是获取证书后自动修改了对应的配置文件。但是这里面也可以获取到几个信息:

1、可以获取通配符证书,但是只能是 DNS plugins 方法。

2、manual (手动) 获取证书不会自动续订。

3、webroot 方式与目录有关,其实就是上面说的在web服务器根目录增加一个/.well-known/acme-challenge/ 目录,里面放验证文件。这个不会自动修改配置文件。

1
2
# 把域名和目录换成自己的就可以了。
certbot certonly --webroot -w /var/www/example -d www.example.com -d example.com -w /var/www/other -d other.example.net -d another.other.example.net 

执行后会有提示说证书在 /etc/letsencrypt/live 目录下,根据你的实际情况配置就可以了。

注:还有通过acme.sh获取证书的方式,也是简单方便:https://github.com/acmesh-official/acme.sh 上有完整的使用方法,这里不多介绍。

本文由作者按照 CC BY 4.0 进行授权

javascript基础-async与await

javascript基础-匿名函数与箭头函数