You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用WinSCP .NET在C#中连接SFTP端口2222时超时问题排查

问题排查与解决

核心问题是你的代码未指定SFTP服务的端口2222:

WinSCP .NET组件的SessionOptions默认使用SFTP协议的标准端口22,但目标服务器的SFTP服务运行在2222端口。FileZilla能正常连接是因为你手动配置了该端口,但代码里遗漏了这个关键配置,导致连接请求发送到错误端口,最终超时。

修复步骤

在SFTP协议的配置分支中添加端口设置:

if (_strftpprotocol == "SFTP")
{
    sessionOptions.Protocol = WinSCP.Protocol.Sftp;
    // 添加这行代码指定端口
    sessionOptions.PortNumber = 2222; 
}

额外检查项

  • 确认_strftpURL仅包含主机名(如fs2.comparethemarket.com),不要附带端口号(比如不要写成fs2.comparethemarket.com:2222),端口必须通过PortNumber属性单独设置。
  • 若后续仍有问题,可检查privatekeyFilePath的拼接逻辑是否正确(但认证错误通常不会直接导致超时,此为次要排查点)。

内容的提问来源于stack exchange,提问作者Rajesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 00:48:28