首页 文章

亚马逊EC2 SSL

提问于
浏览
14

我想在EC2实例上启用ssl . 我知道如何安装第三方SSL . 我还在安全组中启用了ssl .

我只想使用这样的网址:ec2-xx-xxx-xxx-xx.compute-1.amazonaws.com与https .

我找不到任何地方的步骤 .

如果有人可以指导我某些文件或某事,那就太好了 .


编辑:

我在EC2上有一个实例 . 我已经安装了LAMP . 我还在安全组策略中启用了http,https和ssh .

当我在浏览器中打开公共DNS URL时,我可以看到Web服务器运行完美 . 但是当我将https添加到URL时,没有任何反应 .

有没有办法让我失踪?我真的不想在这个实例上使用任何自定义域名,因为我会在一个月后终止它 .

3 回答

  • 6

    事实证明,亚马逊没有提供开箱即用的EC2实例的ssl证书 . 我跳过了他们是虚拟服务器提供商的部分 .

    要安装ssl证书甚至是基本证书,您需要从某人那里购买并在您的服务器上手动安装 .

    我使用startssl.com他们提供免费的基本ssl证书 .

  • 9
    • 使用 openssl 创建自签名SSL证书 . CHeck this链接了解更多信息 .

    • 在Web服务器上安装该证书 . 正如你提到的LAMP,我想这是Apache . 因此,请检查this链接以将SSL安装到Apache .

    如果您重新启动实例,您将获得不同的公共DNS,因此请注意这一点 . 或者将弹性IP地址附加到您的实例 .

    但是当我将https添加到URL时,没有任何反应 .

    正确的是,您的Web服务器需要安装SSL证书和私钥才能为https上的流量提供服务 . 一旦完成,你应该好好去 . 此外,如果您使用自签名证书,那么您的Web浏览器将抱怨不受信任的证书 . 您可以忽略该警告并继续访问该网页 .

  • 2

    对于开发,演示,内部测试(这是我的常见情况),您可以使用隧道工具在ec2中实现演示级https . 在几分钟内,特别是对于[ngrok]的内部测试目的,你会有https(演示级流量通过隧道)

    工具1:https://ngrok.com步骤:

    • 将ngrok下载到您的ec2实例: wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip (在撰写本文时,您将在登录后在ngrok主页中看到此链接) .

    • 在AWS安全组中启用8080,4443,443,22,80 .

    • 注册并登录ngrok并复制命令以使用令牌激活它: ./ngrok authtoken shjfkjsfkjshdfs (登录后,您将在主页中看到它)

    • EC2 上运行你的http - 非https服务器(any,nodejs,python,等等)

    • 运行ngrok: ./ngrok http 80 (如果您的简单http服务器在不同的服务器上运行,则为其他端口)

    • 您将获得服务器的 https 链接 .

    工具2:cloudflare包装

    或者,我认为你可以使用ngrok的替代品,这个名为cloudflare wrap,但我没有尝试过 .

    工具3:localtunnel

    第三种选择可能是https://localtunnel.github.io,与ngrok相反,它可以为您提供免费的子域,但它不是永久性的,但您可以要求特定的子域而不是随机字符串 .

    --subdomain request a named subdomain on the localtunnel server (default is random characters)

    工具4:https://serveo.net/

相关问题