我有动态部署在EC2实例上的Web应用程序(可扩展)。我也有RDS mysql实例,它由python与boto3动态创建。现在RDS的端口3306是公共的,但我想仅允许来自特定VPC的EC2的连接。我可以在特定的VPC上创建RDS(与EC2实例相同)吗?创建此类EC2 + RDS的最佳做法是什么?
答案 0 :(得分:2)
RDS显示端点FQDN并不意味着它是“公共”。您需要处理VPC子网,安全组才能启用连接。
创建RDS时,必须创建db_subnet并指向特定的VPC子网。这是RDS所在的逻辑网络。
接下来将访问:只需将RDS附加到允许EC2访问3306的安全组。
参考:Creating a MySQL DB Instance and Connecting to a Database on a MySQL DB Instance
答案 1 :(得分:1)
将Amazon EC2实例与Amazon RDS数据库放在同一个VPC中当然是最佳做法。建议的安全性是:
Web-SG
)Web-SG
安全组 如果您的RDS实例当前位于不同的VPC中,您可以使用快照,然后从快照创建新数据库。
如果您使用的是 Elastic Load Balancer ,您甚至可以将您的Amazon EC2实例放在私有子网中,因为所有访问都将通过Load Balancer进行。