本地PGAdmin连接AWS RDS配置入站规则后仍超时如何解决
连接Elastic Beanstalk配套RDS的超时排查与配置步骤
和Elastic Beanstalk绑定创建的RDS默认做了私网隔离,仅改安全组入站规则大概率覆盖不到所有限制,按以下顺序逐一排查即可:
- 首先确认RDS公网访问开关状态
EB环境默认创建的关联RDS会默认关闭公网访问,该状态下RDS仅分配VPC内网地址,无公网连接入口,安全组配置再正确也会超时。打开RDS实例的「Connectivity & security」页,找到Public access字段:- 如果显示
No,点击右上角「Modify」进入配置页,找到Connectivity板块,将公网访问选项改为Yes,同时在子网选择项中挑选绑定了互联网网关(IGW)的公网子网,提交修改后等待RDS实例状态变为Available再重试连接
- 如果显示
- 核对安全组配置准确性
最容易踩的错是改了EB实例/负载均衡的安全组而非RDS本身绑定的安全组:必须修改RDS详情页VPC security groups板块直接关联的安全组规则。另外控制台的My IP自动识别经常出错(开VPN、多出口网络时识别结果和实际出口IP不一致),手动查询当前设备的公网出口IP,新增入站规则时手动填写[你的公网IP]/32,端口选择PostgreSQL默认的5432即可,不用开全流量减少暴露风险。 - 校验VPC子网路由配置
开了公网访问但RDS落在私网子网的话依然无法连通:找到RDS实例绑定的子网,查看子网关联的路由表,确认存在0.0.0.0/0目标为互联网网关(igw-开头的资源)的路由规则,如果只有指向NAT网关、VPC对等连接的路由,说明是私网子网,需要给RDS切换到公网子网。 - 排查本地网络拦截
本地企业内网、部分运营商宽带会默认拦截5432端口的出站请求,先在本地执行tcping <RDS连接端点> 5432测试端口连通性,如果不通直接切换手机热点重试,排除本地网络限制。 - 核对连接参数正确性
EB创建RDS时支持自定义数据库端口,不要默认填5432,去RDS详情页确认实际监听端口,在PGAdmin中对应填写,同时确认用户名、密码、数据库名和EB环境变量中存储的配置一致。
补充:如果VPC配置了自定义网络ACL,需要确认ACL入站规则放通你本地IP到5432端口的请求,出站规则放通RDS回包到你本地IP的临时端口(1024-65535),默认ACL为全通状态一般不需要调整。
内容的提问来源于stack exchange,提问作者Sofia
相关产品推荐
相关产品推荐

