HTTPS在 Lightsail 上保护你的 WordPress 网站 - Amazon Lightsail

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

HTTPS在 Lightsail 上保护你的 WordPress 网站

为您的 WordPress 网站启用超文本传输协议 Secure (HTTPS) 可确保访问者相信您的网站是安全的;它正在发送和接收加密数据。非安全网站的地址以 http 开头(如 http://example.com),而安全网站的地址以 https 开头(如 https://example.com)。即使您的网站主要是信息性的,我们仍然建议您启用HTTPS。这是因为如果HTTPS不启用,大多数网络浏览器都会通知网站访问者您的网站不安全,并且您的网站在搜索引擎结果中的排名将较低。

提示

Lightsail 提供了一个指导式工作流程,可在您的实例上自动安装和配置SSL/TLS让我们加密证书。 WordPress 我们强烈建议使用该工作流程,而不是按照本教程中的手动步骤操作。有关更多信息,请参阅启动和配置实 WordPress 例

本指南向您展示如何使用 Bitnami HTTPS 配置工具 (bncert) 在 WordPress Amazon Lightsail HTTPS 上的 Certified by Bitnami 实例上启用。它允许您仅为进行请求时指定的域和子域请求证书。或者,也可以使用 Certbot 工具,为域请求证书和为子域请求通配符证书。通配符证书适用于任何子域,如果您不知道将使用哪个子域将流量引导到您的实例,这样做可以带来好处。但是,Certbot 不会像 bncert 工具那样自动续订证书。如果您使用 Certbot,则必须每 90 天手动续订一次证书。有关使用 Certbot 启用的更多信息HTTPS,请参阅教程:对您的 WordPress 实例使用 Let's Encrypt SSL 证书

内容

步骤 1:了解流程

注意

在本部分中,您可了解此过程的简要概述。执行此过程的具体步骤包含在本指南的后续步骤中。

要HTTPS为您的 WordPress 网站启用,请使用连接您的 Lightsail 实例SSH,然后使用该bncert工具向 Let 's Encrypt TLS 证书颁发机构申请SSL/证书。当您请求证书时,您可以指定网站的主域(example.com) 和备用域(www.example.comblog.example.com 等),如果有的话。Let's Encrypt 通过要求您在域中创建TXT记录,或者验证这些域是否已将流量引导到您发出请求的实例的公有 IP 地址,来验证您是否拥有这些域名。DNS

证书通过验证后,您可以将 WordPress 网站配置为自动将访客从重定向HTTP到HTTPS(http://example.com重定向到https://example.com),这样访客就会被迫使用加密连接。您还可以将您的网站配置为从 www 子域名自动重新导向到顶级域(https://www.example.com 重新导向到 https://example.com),反之亦然(https://example.com 重新导向到 https://www.example.com)。也可以使用 bncert 工具执行这些重新导向操作。

Let's Encrypt 要求您每 90 天续订一次证书,以便HTTPS在您的网站上进行维护。bncert工具会自动为您续订证书,这样您就可以花更多时间关注您的网站。

管理工具的限制

bncert 工具有以下限制:

  • 并非所有 Certified by Bitnami WordPress 实例在创建时都已预先安装在这些实例上。 WordPress 不久前在 Lightsail 上创建的实例需要您手动安装该工具。bncert本指南的步骤 4 向您介绍如何确认该工具已安装在您的实例上,以及在没有安装的情况下如何安装。

  • 您可以仅为进行请求时指定的域和子域请求证书。这与 Certbot 工具不同,它可以为域请求证书和为子域请求通配符证书。通配符证书适用于任何子域,如果您不知道将使用哪个子域将流量引导到您的实例,这样做可以带来好处。但是,Certbot 不会像 bncert 工具那样自动续订证书。如果您使用 Certbot,则必须每 90 天手动续订一次证书。有关使用 Certbot 启用的更多信息HTTPS,请参阅教程:在 Amazon Lightsail 中的 WordPress 实例中使用让我们加密SSL证书

步骤 2:完成先决条件

请完成以下先决条件(如果尚未完成):

  • 在 Lightsail 中创建实例,并在您的 WordPress 实例上配置您的网站。有关更多信息,请参阅 Amazon Light sail 中基于 Linux/UNIX 的实例入门

  • 将静态 IP 附加到实例。如果您停止和启动实例,则实例的公有 IP 地址会出现更改。如果您停止和启动实例,静态 IP 不会更改。有关更多信息,请参阅创建静态 IP 并将其附加到 Amazon Lightsail 中的实例

  • 配置完 WordPress 实例后,为其创建快照,或者启用自动快照。快照可用作备份,如果原始实例出现问题,您便可以从中创建另一个实例。有关更多信息,请参阅创建 Linux 或 Unix 实例的快照或在 Amazon Lightsail 中为实例或磁盘启用或禁用自动快照

  • 向您的域添加DNS记录,将您的域名顶点 () 及其www子域名 (example.com) 的流量引导到您在 Lightsail 中 WordPress 实例的公有 IP 地址。DNS www.example.com您可以在域名的当前DNS托管服务提供商处完成这些操作。或者,如果你将域名的管理权移交DNS给了 Lightsail,你可以使用 Lightsail 中的DNS区域来完成这些操作。要了解更多信息,请参阅 DNS

    重要

    将DNS记录添加到您要用于 WordPress网站的所有域名中。DNS所有这些域名都应将流量路由到您 WordPress 网站的公共 IP 地址。该bncert工具将仅为当前将流量定向到您的 WordPress实例的公有 IP 地址的域名颁发证书。

步骤 3:连接到您的实例

完成以下步骤,在 Lightsail 控制台中使用基于浏览器的SSH客户端连接到您的实例。

  1. 登录 Lightsail 控制台

  2. 在左侧导航窗格中,为您的 WordPress实例选择SSH快速连接图标。

    SSH在 Lightsail 主页上快速连接。

    将打开基于浏览器的SSH客户端窗口。SSH如果您看到 Bitnami 徽标,则通过成功连接到您的实例,如以下示例所示。

    Lightsail 控制台中基于浏览器的SSH客户端窗口。

步骤 4:确认已在实例上安装了 bncert 工具

完成以下步骤以确保您的实例上安装了 Bitnami HTTPS 配置工具 (bncert)。并非所有 Certified by Bitnami WordPress 实例在创建时都已预先安装在这些实例上。 WordPress 不久前在 Lightsail 上创建的实例需要您手动安装该工具。bncert此过程包括在未安装工具时安装该工具的步骤。

  1. 要运行 bncert 工具,请输入以下命令。

    sudo /opt/bitnami/bncert-tool
    • 如果您在响应中看到 command not found(如以下示例所示),则 bncert 工具未安装到实例上。继续执行此过程的后续步骤以在实例上安装 bncert 工具。

      重要

      bncert工具只能用于通过 Bitnami 认证的 WordPress 实例。或者,您可以使用 Certbot 工具在您的实例HTTPS上启用。 WordPress 有关更多信息,请参阅教程:对您的 WordPress实例使用 “让我们加密SSL证书”。

      确认未安装 Bncert 工具的消息
    • 如果您在响应中看到 Welcome to the Bitnami HTTPS configuration tool(如以下示例所示),则 bncert 工具已安装到实例上。继续本指南的步骤 5:HTTPS在您的 WordPress 实例上启用部分。

      确认已安装 Bncert 工具的消息
  2. 输入以下命令以将 bncert 运行文件下载到您的实例中。

    wget -O bncert-linux-x64.run https://downloads.bitnami.com/files/bncert/latest/bncert-linux-x64.run
  3. 输入以下命令以在您的实例上创建 bncert 运行文件的目录。

    sudo mkdir /opt/bitnami/bncert
  4. 输入以下命令以将下载的 bncert 运行文件移动到您创建的新目录。

    sudo mv bncert-linux-x64.run /opt/bitnami/bncert/
  5. 输入以下命令以创建可作为程序执行的 bncert 运行文件。

    sudo chmod +x /opt/bitnami/bncert/bncert-linux-x64.run
  6. 输入以下命令以创建当您输入 sudo /opt/bitnami/bncert-tool 命令时运行 bncert 工具的符号链接。

    sudo ln -s /opt/bitnami/bncert/bncert-linux-x64.run /opt/bitnami/bncert-tool

    您现在已完成在实例上安装 bncert 工具的步骤。继续本指南的步骤 5:HTTPS在您的 WordPress 实例上启用部分。

步骤 5:HTTPS在您的 WordPress实例上启用

确认您的 WordPress 实例HTTPS上已安装该bncert工具后,请完成以下步骤以在您的实例上启用。

  1. 要运行 bncert 工具,请输入以下命令。

    sudo /opt/bitnami/bncert-tool

    您应看到类似于以下示例的消息。

    运行 bncert 工具

    如果 bncert 工具已在您的实例上安装了一段时间,那么您可能会看到一条消息,指示该工具的更新版本可供使用。按以下示例中所示选择下载它,然后再次输入 sudo /opt/bitnami/bncert-tool 命令来运行 bncert 工具。

    指示新版本 bncert 工具可用的消息
  2. 输入用空格分隔的主域名和备用域名,如以下示例所示。

    如果您的域未配置为将流量路由到实例的公有 IP 地址,则 bncert 工具将要求您在继续之前进行该配置。您的域必须将流量路由到您使用该bncert工具在实例HTTPS上启用的实例的公有 IP 地址。这将确认您拥有该域,并能用于进行证书的验证。

    输入主域名和备用域名
  3. bncert 工具会询问您希望如何配置网站的重新导向。以下是可用的选项:

    • 启用HTTPS重HTTP定向-指定浏览网站HTTP版本(即http:/example.com)的用户是否会自动重定向到该HTTPS版本(即https://example.com)。我们建议启用此选项,因为它会强制所有访问者使用加密连接。输入 Y 然后按 Enter 以启用它。

    • 启用非 www 重新导向到 www - 指定是否将浏览顶级域(即 https://example.com)的用户自动重新导向到域的 www 子域(即 https://www.example.com)。我们建议启用此选项。但是,如果您在搜索引擎工具(例如Google的网站管理员工具)中www将域名的顶点指定为首选网站地址,或者您的顶点直接指向您的IP,而您的www子域名通过记录引用您的顶点,则可能需要将其禁用并启用备用选项(启用为非www重定向)。CNAME输入 Y 然后按 Enter 以启用它。

    • 启用 www 到非 www 重新导向 - 指定是否将浏览域的 www 子域(即 https://www.example.com)的用户自动重新导向到顶级域(即 https://example.com)。如果您启用了非 www 重新导向到 www,建议禁用此选项。输入 N 然后按 Enter 以禁用它。

    您的选择应类似于以下示例:

    网站重新导向选项
  4. 将列出要进行的更改。输入 Y 然后按 Enter 以确认并继续。

    确认更改
  5. 输入要与 Let's Encrypt 证书关联的电子邮件地址,然后按 Enter(确定键)

    将您的电子邮件地址与 Let's Encrypt 证书关联
  6. 查看 Let's Encrypt 的加密用户协议 输入 Y 然后按 Enter 接受协议并继续。

    查看 Let's Encrypt 用户协议

    执行这些操作是为了HTTPS在您的实例上启用,包括申请证书和配置您指定的重定向。

    正在执行操作

    您的证书已成功颁发和验证,如果您看到类似于以下示例的消息,则表示在实例上成功配置了重新导向。

    操作成功完成

    bncert 工具将在证书过期前每 80 天执行一次自动续订。如果您希望在实例中使用其他域名和子域名,并且想要HTTPS为这些域名启用,请重复上述步骤。

    现在,您已完成HTTPS对 WordPress 实例的启用。继续执行本指南的 “步骤 6:测试您的网站是否正在使用 HTTPS” 部分。

第 6 步:测试您的网站是否正在使用 HTTPS

在您的 WordPress 实例HTTPS上启用后,您应该HTTPS通过浏览您在使用该bncert工具时指定的所有域名来确认您的网站正在使用。当您访问每个域时,您应该看到它们在使用安全连接,如以下示例所示。

注意

您可能需要刷新并清除浏览器的缓存才能看到更改。

安全网站确认

您可能还会发现非 www 地址重新导向到域的 www 子域,反之亦然,具体取决于您在运行 bncert 工具时选择的选项。