首页 > 解决方案 > 如果我可以使用 AWS 安全组来保护我的 MongoDB EC2 实例,我真的需要 VPC 吗?

问题描述

我真的被困在这里决定我是否真的需要一个 VPC 来将我的 MongoDB 实例(也是一个 graphQL 服务器)部署到 AWS 上?我正在开发一个项目,该项目将有一个 GraphQL 服务器来服务移动应用程序以及一个 MongoDB 实例来存储数据。我到处都读到您必须使用 VPC,但为什么呢?我不能使用 AWS 提供的安全组吗?这将允许我锁定我的 MongoDB 实例,对吗?

我不想使用 VPC 的原因纯粹是因为额外的费用!. 我正在从事的项目预算很少,并且为 AWS 上的 VPC 支付所有额外费用(每月至少 60 美元)是不可行的。也许如果我正在构建一个庞大的应用程序,并且拥有成千上万的用户,并且需要规模和增加安全性才能让我安心,那么我会考虑使用 VPC,但因为它不会是那样,并且预算很少,可以使用安全组来锁定我的 mongodb ec2 实例吗?

我研究了其他托管解决方案,特别是 Digitalocean,因为它们提供免费的 VPC 服务,但是 Digitalocean 在我所在的地区没有数据中心(除其他外)+ 我过去使用过 AWS 并且会喜欢继续使用它。

我会喜欢任何关于我可以/应该做什么的建议。

标签: mongodbamazon-web-servicesamazon-ec2aws-security-groupnetwork-security

解决方案


安全组是 VPC 的一项功能,与 EC2 实例的托管方式紧密相关。您需要一个 VPC 来定义您的网络规则,包括托管 MongoDB 和 GraphQL 服务器的实例是否是公共/私有的,以及它们的安全组规则是什么。

我不确定您所指的费用是多少,因为 VPC 是免费的,并且所有帐户都带有已经为您创建的 VPC(默认 VPC)。您只需为您使用的入口/出口流量付费,因此如果您没有做任何大规模的事情,那么与用于托管您的机器的实例的成本相比,成本将是很小的(0.02 美元/GB)。

为了解决您的评论,仅当您希望您的实例位于私有子网上但您希望这些子网能够访问 Internet 时才需要 NAT 网关。如果您愿意将实例放在公共子网上,然后使用安全组和 NACL 规则将它们锁定,则不需要这样做(这不是最佳安全实践,但可以通过它来节省成本)。


推荐阅读