C# System.Net.FtpClient with SSL\TLS-尝试连接时超时

C# System.Net.FtpClient with SSL\TLS-尝试连接时超时,c#,ftp,ftp-client,ftps,C#,Ftp,Ftp Client,Ftps,我安装了FTP服务器(基于ubuntu\vsftpd) 我正在从internet连接此ftp服务器,因此激活了服务器中的SSL安全功能 为了检查一切是否正常,我使用FileZiLla->它正在工作进行测试。 日志(来自FileZilla): 回到我的C代码。。。 我正在尝试使用以下代码连接我的服务器,该代码基于: 我有一个例外: System.TimeoutException:尝试连接时超时!在 System.Net.FtpClient.FtpSocketStream.Connect(字符串主机

我安装了FTP服务器(基于ubuntu\vsftpd)

我正在从internet连接此ftp服务器,因此激活了服务器中的SSL安全功能

为了检查一切是否正常,我使用FileZiLla->它正在工作进行测试。 日志(来自FileZilla):

回到我的C代码。。。 我正在尝试使用以下代码连接我的服务器,该代码基于:

我有一个例外:

System.TimeoutException:尝试连接时超时!在 System.Net.FtpClient.FtpSocketStream.Connect(字符串主机,Int32端口, FTPIP版本(IPV版本)在 System.Net.FtpClient.FtpClient.Connect()


有人知道为什么会这样吗?为什么我要检查

看起来您正在使用FTP主动模式(
FtpDataConnectionType.AutoActive
),FileZilla正在使用被动模式(发送PASV命令,而不是端口命令)。尝试使用
AutoPassive
而不是
AutoActive

看起来您正在使用FTP主动模式(
FtpDataConnectionType.AutoActive
),FileZilla正在执行被动模式(发送PASV命令,而不是端口命令)。尝试使用
AutoPassive
而不是
AutoActive

设置加密模式时需要将DataConnectionEncryption设置为true

this.Client.EncryptionMode = FtpEncryptionMode.Explicit;
this.Client.DataConnectionEncryption = true;

设置EncryptionMode时需要将DataConnectionEncryption设置为true

this.Client.EncryptionMode = FtpEncryptionMode.Explicit;
this.Client.DataConnectionEncryption = true;

选中的。同样的问题。您是否可以添加一些协议跟踪以查看发生了什么(或者使用wireshark捕获流量,但之后您应该使用ftp禁用TLS)。已检查。同样的问题。您是否可以添加一些协议跟踪来查看发生了什么(或者使用wireshark捕获流量,但是您应该使用ftp禁用TLS)。您是否解决了该问题?ftps也有同样的问题。你解决问题了吗?与FTP有相同的问题。
this.Client.EncryptionMode = FtpEncryptionMode.Explicit;
this.Client.DataConnectionEncryption = true;