使用Mongodb Atlas在AWS上设置Zappa项目时,我是否缺少任何陷阱?从https://docs.atlas.mongodb.com/security-vpc-peering/
开始,我开始遵循此页面上的指南,并已扩展到其他各种资源。我有一个与我的Atlas群集对等的VPC。双方都说该连接处于活动状态。
我有一个包含2条路线的路线表:
Destination: <My VPC CIDR> Target: local
Destination: <My Atlas CIDR> Target: <My Atlas Peering ID>
路由表的VPG的Propogate设置为True,但是没有路由被传播。
有4个与该路由表关联的子网。
所有4个子网和VPC已连接到Lambda上的Zappa功能。
与职能部门相关的还有一个非常宽松的执行角色和安全组。
安全组和VPC CIDR在Atlas的IP白名单页面上均处于活动状态。
还有一个与所有4个子网相关联的网络ACL,具有非常宽松的入站和出站规则。
Atlas群集和AWS区域相同。
我尝试将所有IPS列入白名单,但是那没用
API网关没有VPC链接,不存在任何NLB(严格来说,这是EC2吗?该计划是在Lambda上部署的,并且由于我是早期开发人员,所以我没有可供选择的证书。 )
答案 0 :(得分:0)
最终的陷阱是我的Atlas Tier不支持对等连接。
这是另外两个解决方案,两者都通过Internet而不是通过AWS发送流量。
1:
将MongoDB Atlas中的所有IP(添加0.0.0.0/0)列入白名单。
2:
在您的VPC仪表板上:
将Internet网关连接到VPC。
创建一个新的EIP。
创建一个公共子网和一个私有子网。 (这意味着我要在名称中包含“ public”和“ private”。稍后我们将关联路由表时,实际上会将它们设为public和private)。
创建一个NAT网关并将其连接到EIP和公共子网。
创建一个专用路由表,该路由表将所有流量路由到NAT网关(保留从VPC CIDR到本地的现有路由)。
创建一个公共路由表,该路由表将所有流量路由到Internet网关(保留从VPC CIDR到本地的现有路由)。
将您的公用子网与公用路由表相关联,并将您的专用子网与专用路由表相关联。
创建网络ACL并根据需要与任何子网关联。
在Lamda功能仪表板上:
关联您的VPC。
关联您的专用子网。
根据需要关联任何安全组。
在您的MongoDB Atlas仪表板上:
在MongoDB Atlas中将您的EIP列入白名单。
注意:Amazon向NAT网关收费。如果您是免费会员,那么这是唯一的非免费部分。