如何在AWS EC2 WordPress站点上安装SSL

时间:2017-11-06 22:06:57

标签: wordpress amazon-web-services ssl amazon-ec2

我已使用EC2在AWS上创建并启动了我的WordPress网站。我按照tutorial来创建网站。它目前使用Route 53映射到域。网站上的所有开发都是在我的实例中在线完成的。

我现在想在我的网站上安装SSL证书。我该怎么做?

5 个答案:

答案 0 :(得分:1)

根据教程,由于您只配置了EC2实例,因此直接方法是购买SSL证书并将其安装到apache服务器中。有关详细步骤,请参阅本教程 HOW TO ADD SSL AND HTTPS IN WORDPRESS How to Add SSL and HTTPS in WordPress

如果您计划使用AWS Certificate Manager颁发的免费SSL证书,则需要配置Elastic Load Balancer或CDN CloudFront。如果您是AWS的新手,这可能会变得复杂。如果您打算尝试使用AWS Cloudfront,请按照How To Use Your Own Secure Domain with CloudFront中的步骤操作。

使用Cloudfront还可以提高性能,因为它可以缓存内容并减少EC2实例的负载。然而,您将面临的挑战之一是避免混合内容问题。有WordPress插件能够解决混合内容问题,所以请尝试一下。

答案 1 :(得分:1)

如果您正在寻找简单且免费的解决方案,请尝试https://letsencrypt.org/。他们有一个易于遵循的文档给任何人。

TLDR;前往https://certbot.eff.org/,选择您的操作系统和服务器类型,他们将为您提供4-5线安装以自动安装证书。

在尝试之前,请确保使用Route53或弹性IP将您的域名正确指向您的EC2。

例如,您需要运行以在运行nginx的Ubuntu EC2上自动获取和安装SSL

$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install python-certbot-nginx 

祝你好运!

答案 2 :(得分:1)

如果您使用“ Bitnami”在AWS上创建了WordPress, 您可以SSH到您的实例并运行:

sudo /opt/bitnami/bncert-tool

有关详情,请参见bitnami docs

答案 3 :(得分:0)

这是我在WordPress网站Site Link

上启用SSL的方法

我使用了Lets Encyprpt X.509证书。 Lets Encrypt是一个证书颁发机构,可以免费自动提供x.509证书。您可以找到有关let encrypt here

的更多信息

要遵循的步骤:

  1. SSH进入实例并切换到root。
  2. 下载Certbot

    wget https://dl.eff.org/certbot-auto

    Chmod a + x certbot-auto

  3. 运行certbot以获取证书

    sudo ./certbot-auto --debug -v --server https://acme-v01.api.letsencrypt.org/directory certonly -d" your-domain-name"

  4. 将启动一个向导,要求您为Apache,WebRoot和Standalone选择选项。选择WebRoot选项并继续。注意​​域的目录

  5. 通常/ var / www / html将是您域名的目录。成功后,您将在以下路径中获得三个证书

    证书:/ etc / letsencrypt / live /<<<"域名">>> /cert.pem

    全链:/ etc / letsencrypt / live /<<<"域名">>> /fullchain.pem

    私钥:/etc/letsencrypt/live/<<<"Domain-Name">>>/privkey.pem

  6. 将pem文件路径复制到/etc/httpd/conf.d/ssl.conf。然后重启apache

    服务httpd重启

  7. 最后,我在wordpress中启用了 Really Simple SSL 插件。多数民众赞成!

答案 4 :(得分:0)

本教程提供了一个简单的3步骤指南,用于使用LetsEncrypt / Certbot在AWS上设置Wordpress:

https://blog.brainycheetah.com/index.php/2018/11/02/wordpress-switching-to-https-ssl-hosted-on-aws/

  

步骤1:获取SSl证书   步骤2:设定重新导向   步骤3:更新防火墙

在每个阶段用您自己的网站地址替换“ example.com”。

安装certbot:

$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install python-certbot-apache

创建证书:

$ sudo certbot --apache -m admin@example.com -d example.com -d www.example.com

要配置重定向,请首先打开wp-config文件:

$ sudo vim /var/www/html/example.com/wp-config.php

在“停止编辑”注释行上方插入以下内容:

// HTTPS configuration
define('WP_HOME','https://example.com');
define('WP_SITEURL','https://example.com');
define('FORCE_SSL_ADMIN', true);

最后,通过AWS控制台更新防火墙:

  1. 登录到EC2 / Lightsail实例的AWS控制面板
  2. 在“防火墙”部分中的“网络”选项卡上,选择正下方 桌子
  3. 选择添加另一个
  4. 默认情况下,应在前两个字段中预先填充“自定义”和“ TCP”,保持原样
  5. 在“端口范围”字段中输入443选择“保存”

然后只需重新加载您的apache配置:

sudo service apache2 reload

你应该很好。