无法从EC2实例连接到RDS - 已允许VPC访问

时间:2017-08-06 01:59:43

标签: amazon-web-services amazon-ec2 amazon-rds

我正在尝试从我的EC2实例连接到RDS SQL Server(它们位于同一个VPC中)。

据我了解,只要RDS和EC2在同一个VPC中,我只需要确保EC2安全组允许来自端口1433(SQL Server)的流量;和RDS安全组允许EC2访问。我已将我的设置配置如下:

在VPC名称'xyz'下 - 我有两个安全组名称'ec2'和'rds'。 配置详细信息:

'ec2' security group: Inbound rules allow port 1433 to access.
'rds' security group: Allow 'All ICMP - IPv4','All TCP' and 'All UDP' for 'ec2' security group.

我尝试使用SQL Management Studio从我的EC2实例连接到RDS(服务器名称为rds.blah.blah ... amazonaws.com,1433;使用sql server身份验证)但是失败了。我收到的错误信息是:

  

'建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供者:TCP提供者,错误:0 - 没有这样的主机是已知的。)(Microsoft SQL Server,错误:11001)没有这样的主机已知'

只是想知道是否有人可以指出我做错了什么?非常感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

你误解了ec2和rds安全组织'入站和出站规则。将ec2安全组设置为Inbound rules allow port 1433 to access.

对我来说没有意义

下面列出了相关的安全组设置,如果您这样做,请查看:

ec2安全组

将出站(出口)规则设置为

Type: All traffic
Protocol: All
Port Range: All
Destination: 0.0.0.0/0

这不会限制任何出站流量,您可以稍后进行调整以缩小其范围

rds安全组

将入站(入口)规则设置为

Type: MS SQL
Protocol: TCP
Port Range: 1433
Source: ec2 security group id (sg-xxxxxx)

@John Rotenstein的评论:这意味着任何与该EC2安全组关联的EC2实例都将被允许访问端口1433上的RDS