23

AWS Certificate Manager (ACM) 为 AWS 用户提供 SSL/TLS 证书。它是否也适用于 Lightsail 用户?

如果没有,是否有关于在 Lightsail 服务器上设置 SSL 证书的说明或建议?

4

3 回答 3

22

根据其他答案,您不能使用 AWS Certificate Manager 为 Amazon Lightsail 实例或任何其他 EC2 实例创建和安装证书。但是,您可以创建自己的 SSL/TLS 证书并手动安装它们。WordPress 的 Lightsail 实例由 Bitnami 提供支持,Bitnami 提供了有关如何使用 LetsEncrypt 创建和安装免费 SSL/TLS 证书的确切说明。

https://docs.bitnami.com/aws/how-to/generate-install-lets-encrypt-ssl/

我为 lukejanicke.com 成功完成了这个过程,但没有立即让它为www .lukejanicke.com工作

于 2017-01-30T17:13:28.830 回答
9

目前没有将 ACM 证书用于 Lightsail 实例的机制。

但是,也没有直接在 EC2 实例上使用 ACM 证书的机制。它们必须位于负载均衡器后面,因为 ACM 不为您提供对证书私钥的访问权限。

您只能将 ACM 证书与 ELB/ALB 和 CloudFront 一起使用。

Lightsail 上的实例元数据中可见的信息表明 ELB/ALB 可能是那里的一个未来功能,这表明它可能在未来......但目前还不是。

当然,CloudFront 可以与任何源服务器一起使用——EC2、Lightsail,甚至是根本不在 AWS 中的源服务器。(我的客厅里有一台在 CloudFront 后面工作的服务器)。如果您不需要在 CloudFront 和您的 Lightsail 机器之间进行加密(仅在浏览器和 CloudFront 之间),那么您可以立即进行配置,并在 CloudFront 上使用 ACM 证书,并将 Lightsail 作为源服务器。唯一的问题是您不会使用从 Lightsail 到 Internet 的免费出站带宽配额 - 您将使用 CloudFront 出站 Internet 带宽,它没有像 Lightsail 那样的大免费配额。

于 2017-01-16T02:41:51.457 回答
2

如何使用 SSL 证书启用 HTTPS 支持?

注意:以下步骤假设您使用的是自定义域名,并且您已将自定义域名配置为指向您的云服务器。

Bitnami 图像带有已预先配置的 SSL 支持和一个虚拟证书。尽管此虚拟证书可用于测试和开发目的,但您通常希望将有效的 SSL 证书用于生产用途。您可以自己生成(在此处解释),也可以从商业证书颁发机构购买。

获得证书和证书密钥文件后,您需要更新服务器以使用它们。按照以下步骤激活 SSL 支持:

使用下表确定证书和配置文件的正确位置。

在此处输入图像描述 将您的 SSL 证书和证书密钥文件复制到指定位置。

注意:如果您对证书和密钥文件使用不同的名称,则应在相应的 Apache 配置文件中重新配置 SSLCertificateFile 和 SSLCertificateKeyFile 指令以反映正确的文件名。

如果您的证书颁发机构还为您提供了 PEM 编码的证书颁发机构 (CA) 捆绑包,您必须将其复制到上表中的正确位置。然后,修改 Apache 配置文件以在 SSLCertificateKeyFile 指令下方包含以下行。根据您的场景和 Apache 版本选择正确的指令:

在此处输入图像描述

注意:如果您为 CA 证书包使用不同的名称,则应在相应的 Apache 配置文件中重新配置 SSLCertificateChainFile 或 SSLCACertificateFile 指令以反映正确的文件名。

复制所有服务器证书文件后,您可以仅使用以下命令使 root 用户可以读取它们:

sudo chown root:root /opt/bitnami/apache2/conf/server*
sudo chmod 600 /opt/bitnami/apache2/conf/server*

在服务器防火墙中打开端口 443。有关更多信息,请参阅常见问题解答。

重新启动 Apache 服务器。

您现在应该能够使用 HTTPS URL 访问您的应用程序。

如何创建 SSL 证书?

您可以使用 OpenSSL 二进制文件创建自己的 SSL 证书。然后可以将证书请求发送到证书颁发机构 (CA) 以将其签名到证书中,或者如果您有自己的证书颁发机构,您可以自己签名,或者您可以使用自签名证书(因为您只需想要一个测试证书或因为您正在设置自己的 CA)。

创建您的私钥(如果您尚未创建它):

sudo openssl genrsa -out /opt/bitnami/apache2/conf/server.key 2048

创建证书:

 sudo openssl req -new -key /opt/bitnami/apache2/conf/server.key -out /opt/bitnami/apache2/conf/cert.csr

重要提示:当上述命令要求输入“通用名称”时,请输入服务器域名。

将 cert.csr 发送到证书颁发机构。当证书颁发机构完成他们的检查(并且可能收到您的付款)时,他们会将您的新证书交给您。

在收到证书之前,创建一个临时的自签名证书:

 sudo openssl x509 -in /opt/bitnami/apache2/conf/cert.csr -out /opt/bitnami/apache2/conf/server.crt -req -signkey /opt/bitnami/apache2/conf/server.key -days 365

生成受密码保护的版本后,将您的私钥备份到安全位置,如下所示:

sudo openssl rsa -des3 -in /opt/bitnami/apache2/conf/server.key -out privkey.pem

请注意,如果您在 Apache 配置文件中使用此加密密钥,则每次 Apache 启动时都需要手动输入密码。从此文件重新生成没有密码保护的密钥,如下所示:

sudo openssl rsa -in privkey.pem -out /opt/bitnami/apache2/conf/server.key

在http://www.openssl.org找到有关证书的更多信息。

答案是从https://docs.bitnami.com/aws/apps/wordpress/#how-to-enable-https-support-with-ssl-certificates复制的,以便在页面过期或更改时可用。

于 2016-12-21T22:51:47.177 回答