允许 AWS 私有 EC2 HTTP 和 HTTPS 公开

允许 AWS 私有 EC2 HTTP 和 HTTPS 公开

抱歉,我仍在学习 AWS,目前我正在探索使用运行 Windows Server IIS 的私有 EC2 通过站点到站点 VPN/VPC 连接到数据库到本地 DC,除了数据库连接/端口之外,我还将允许通过 VPN 访问 RDP。

但是我希望用户能够从公共网络访问 IIS HTTP 和 HTTPS。这需要哪些步骤或要求?我读到过它需要 ELB?感谢您的反馈,希望您能为我指明正确的方向或资源。谢谢。

答案1

AWS 是一个相当复杂的企业平台。您确实需要学习该平台才能使用它,以确保您可以正确、安全地完成工作。培训很有帮助。

由于您没有使用标准 AWS 术语,因此您的问题有点难以回答。但简短的回答是与您的 IIS 服务器关联的安全组需要打开入站端口 80 和 443。如果您只有一台 EC2 服务器,则不需要 ELB,但 ELB 可提供针对某些形式的 DDOS 攻击的额外保护。您确实需要 VPC 中的 Internet 网关,并将其路由到您的公共子网,但您的私有子网的路由表不应路由到 Internet 网关。私有子网也不应该分配公共 IP。

更新 - 如果您想运行多个 Web 服务器,则在一个安全组中使用应用程序负载均衡器,其中 443/80 向全世界开放,然后为您的 EC2 实例使用另一个安全组,仅向 ALB 开放。EC2 实例最好位于私有子网中,没有往返互联网的路由,也没有公共 IP。

如果这没有意义,我建议要么接受一些培训,要么雇人帮忙:)

更新 SSL

我不会在 CloudFlare 上进行 TLS 卸载,因为这会使您的流量在互联网上未加密,并且不符合任何规定。您可以在 ALB 上终止 TLS 并相当安全地使用 http 访问您的 EC2 实例,因为 AWS 内的流量通常被认为是安全的,它由 AWS Hyperplane 隔离。ALB 可以在端口 443 上接收流量,解密,然后通过端口 80 传递到 EC2。我自己没有这样做过,但我认为您只需将目标组设置为监听端口 80 而不是 443。使用 AWS 证书管理器创建 TLS 证书。

就我个人而言,除非我有充分的理由或工作量不敏感,否则我会在 EC2 实例上执行 TLS。不过,使用 ALB 证书比在每个 EC2 实例上安装证书更容易。

相关内容