我们如何在Amazon EC2中启用HTTPS?我们的网站正在使用HTTP。
我们如何在Amazon EC2中启用HTTPS?我们的网站正在使用HTTP。
Answers:
首先,您需要打开HTTPS端口(443)。为此,请转到https://console.aws.amazon.com/ec2/,然后单击Security Groups
左侧的链接,然后创建一个同时具有HTTPS的新安全组。然后,只需更新正在运行的实例的安全组或使用该组创建一个新实例。
完成这些步骤之后,您的EC2工作就完成了,这全都是应用程序问题。
you can't change a security group of a running instance, even rebooting
-我认为自发布此答案以来,该限制已被删除。
Edit inbound rules
该答案主要针对那些在另一个站点(如GoDaddy)购买域名并想通过证书管理器使用Amazon免费证书的人。
此答案使用的是Amazon Classic Load Balancer(付费),请在使用前查看价格
步骤1-向证书管理器申请证书
转到证书管理器>请求证书>请求公共证书
在域名将添加myprojectdomainname.com
和*.myprojectdomainname.com
去下一步
选择电子邮件验证并确认并请求
打开您收到的电子邮件(在您购买域的电子邮件帐户上)并确认请求
之后,检查myprojectdomainname.com
和的验证状态 *.myprojectdomainname.com
是否成功,如果成功,则可以继续执行步骤2
步骤2-为负载均衡器创建安全组
在EC2上,转到“安全组”>“创建安全组”,然后添加http和https入站
第3步 -创建负载均衡器
EC2>负载均衡器>创建负载均衡器>经典负载均衡器(第三选项)
在内部创建LB-项目的vpc在Load Balancer协议上添加Http和Https
下一步>选择退出的安全组
选择您在上一步中创建的安全组
下一步>从ACM选择证书
选择步骤1的证书
下一个>
在运行状况检查中,我使用了ping路径/(一个斜杠代替/index.html)
步骤4-将您的实例与负载均衡器的安全组关联
EC2>实例>单击您的项目>操作>网络>更改安全组
添加您的负载均衡器的安全组
第5步
EC2>负载均衡器>单击已创建的负载均衡器>复制DNS名称(A记录),类似于 myproject-2021611191.us-east-1.elb.amazonaws.com
转到Route 53>路由区域>单击域名>转到记录集(如果您的域不在此处,请使用Domain Name: myprojectdomainname.com
和创建托管区域Type: Public Hosted Zone
)
检查您是否具有记录类型A(可能不是),创建/编辑名称为空的记录集,类型A,别名为Yes,并定位已复制的dns
还创建一个新的记录集,类型为A,名称*.myprojectdomainname.com
,别名是,并定位您的域(myprojectdomainname.com)。这样就可以通过www.myprojectdomainname.com和subsite.myprojectdomainname.com访问您的站点。注意:您需要配置反向代理(Nginx / Apache)来这样做。
在NS上,复制要在下一步中使用的4个名称服务器值,它将类似于:
ns-362.awsdns-45.com
ns-1558.awsdns-02.co.uk
ns-737.awsdns-28.net
ns-1522.awsdns-62.org
转到EC2>实例>并复制IPv4公共IP
第6步
在您购买了域名的域名注册网站上(以我的情况为GoDaddy)
将路由更改为,http : <Your IPv4 Public IP Number>
然后选择带屏蔽的转发
将名称服务器(NS)更改为已复制的4个NS,这可能需要48个小时才能生效
Amazon EC2实例只是虚拟机,因此您可以按照在任何服务器上进行设置的方式来设置SSL。
您没有提到您使用的平台,因此很难提供更多信息。
一个老问题,但值得一提的是答案中的另一个选择。如果您的域的DNS系统已在Amazon Route 53中定义,则可以在EC2之前使用Amazon CloudFront服务,并向其附加免费的Amazon SSL证书。这样,既可以使用CDN来加快内容交付速度,又可以使用HTTPS协议保护域,这将使您受益。
对于想要主要在演示和测试目的上在ec2上使用无忧https的人们,还必须有一个答案,他们可以快速实现这一目标的一种方法是:
我在这里的答案描述了如何使用EC2在数分钟内实现HTTP以进行测试,而无需麻烦地创建证书
使用Elastic Load Balacing,它在负载均衡器上支持SSL终止,包括卸载应用程序实例中的SSL解密并提供SSL证书的集中管理。
您也可以使用Amazon API Gateway。将您的应用程序放在API网关后面。请检查此常见问题