AWS Lambda(Node)在VPC+NAT环境下连接SFTP超时求助
SFTP连接超时排查思路
- 检查端口权限配置:HTTPS依赖443端口,SFTP默认用22端口,确认NAT网关所在公有子网的安全组、网络ACL,以及Lambda关联的安全组,都允许出站TCP 22端口访问目标SFTP服务器的IP地址。
- 核实SFTP服务器白名单:本地能连接不代表AWS NAT网关的静态公网IP已在SFTP服务器的允许列表内,把配置的静态IP添加到SFTP服务器的防火墙或白名单中,这是超时的常见原因。
- 校验网络ACL无状态规则:可达性分析器仅验证路径连通性,但网络ACL是无状态的,需确保:
- 公有子网的网络ACL允许入站TCP 22端口的响应流量(源端口为22,目的端口为Lambda临时端口范围1024-65535)
- 私有子网的网络ACL允许出站TCP 22请求,以及对应的入站响应流量
- 在Lambda内加连通性测试:修改Lambda代码,加入端口检测逻辑,比如执行
nc -zv <sftp-server-ip> 22,或者捕获SFTP连接时的详细错误信息(是超时还是连接被拒绝),定位问题本质。 - 检查NAT网关状态:查看CloudWatch中的NAT网关指标,比如
ErrorPortAllocation、PacketsDropCount,确认NAT网关无异常,不存在带宽瓶颈或资源耗尽情况。 - 确认SFTP端口是否非标准:部分SFTP服务会用非默认的22端口,再次核对目标服务器的端口配置,避免因端口填写错误导致失败。
内容的提问来源于stack exchange,提问作者GreenB
相关产品推荐
相关产品推荐

