如何在 Ubuntu 16.04 上使用 Let's Encrypt 保护 Apache如何在 Ubuntu 16.04 上使用 Let's Encrypt 保护 Apache如何在 Ubuntu 16.04 上使用 Let's Encrypt 保护 Apache如何在 Ubuntu 16.04 上使用 Let's Encrypt 保护 Apache
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Ubuntu 16.04 上使用 Let's Encrypt 保护 Apache

介绍

本教程将向您展示如何在运行 Apache 作为 Web 服务器的 Ubuntu 16.04 服务器上设置来自 Let's Encrypt 的 TLS/SSL 证书。

SSL 证书在 Web 服务器中用于加密服务器和客户端之间的流量,为访问您的应用程序的用户提供额外的安全性。 Let's Encrypt 提供了一种免费获取和安装可信证书的简便方法。

先决条件

为了完成本指南,您需要:

  • 一台 Ubuntu 16.04 服务器,带有一个非 root 启用 sudo 的用户,您可以按照我们的初始服务器设置指南进行设置
  • 安装了一个或多个域名的 Apache 网络服务器通过指定 ServerName 的虚拟主机正确配置。

当您准备好继续前进时,请使用启用了 sudo 的帐户登录到您的服务器。

第 1 步 — 安装 Let's Encrypt 客户端

Let's Encrypt 证书是通过在您的服务器上运行的客户端软件获取的。官方客户端称为 Certbot,其开发人员维护自己的 Ubuntu 软件存储库,其中包含最新版本。由于 Certbot 处于如此活跃的开发阶段,因此值得使用此存储库安装比 Ubuntu 默认提供的更新版本。

首先,添加存储库:

  1. sudo add-apt-repository ppa:certbot/certbot

您需要按 ENTER 接受。之后,更新包列表以获取新存储库的包信息:

  1. sudo apt-get update

最后,使用 apt-get 从新存储库安装 Certbot:

  1. sudo apt-get install python-certbot-apache

certbot Let's Encrypt 客户端现在可以使用了。

第 2 步 — 设置 SSL 证书

使用 Certbot 为 Apache 生成 SSL 证书非常简单。客户端将自动获取并安装对作为参数提供的域有效的新 SSL 证书。

要执行交互式安装并获取仅涵盖单个域的证书,请像这样运行 certbot 命令,其中 example.com 是您的域:

  1. sudo certbot --apache -d example.com

如果要安装对多个域或子域有效的单个证书,可以将它们作为附加参数传递给命令。参数列表中的第一个域名将是 Let's Encrypt 用于创建证书的基域,因此我们建议您将裸顶级域名作为列表中的第一个,然后是任何其他子域或别名:

  1. sudo certbot --apache -d example.com -d www.example.com

对于此示例,基本域将为 example.com。

如果你有多个虚拟主机,你应该为每个运行一次 certbot 来为每个生成一个新的证书。您可以以任何方式在虚拟主机上分配多个域和子域。

安装依赖项后,您将看到一个自定义证书选项的分步指南。系统会要求您提供用于丢失密钥恢复和通知的电子邮件地址,并且您可以选择启用 http 和 https 访问或强制重定向所有请求到 https。通常要求 https 是最安全的,除非您对未加密的 http 流量有特定需求。

安装完成后,您应该能够在 /etc/letsencrypt/live 中找到生成的证书文件。您可以使用以下链接验证您的 SSL 证书的状态(不要忘记将 example.com 替换为您的基本域):

https://www.ssllabs.com/ssltest/analyze.html?d=example.com&latest

您现在应该可以使用 https 前缀访问您的网站。

第 3 步 — 验证 Certbot 自动续订

Let's Encrypt 证书的有效期仅为 90 天。但是,我们安装的 certbot 包通过 systemd 计时器每天运行两次 certbot renew 来帮我们解决这个问题。在非 systemd 发行版上,此功能由放置在 /etc/cron.d 中的 cron 脚本提供。该任务每天运行两次,并将更新任何在三十天内到期的证书。

要测试续订过程,您可以使用 certbot 进行空运行:

  1. sudo certbot renew --dry-run

如果您没有看到任何错误,则一切就绪。必要时,Certbot 将更新您的证书并重新加载 Apache 以获取更改。如果自动续订过程失败,Let's Encrypt 将向您指定的电子邮件发送一条消息,在您的证书即将过期时警告您。

结论

在本指南中,我们了解了如何安装来自 Let's Encrypt 的免费 SSL 证书,以保护使用 Apache 托管的网站。我们建议您查看官方的 Certbot 文档以了解有关 Certbot 客户端的更多详细信息。

©2015-2025 艾丽卡 support@alaica.com