Windows 7 上的 Windows 防火墙阻止了活动的 FTP 客户端

Eli*_*Eli 4 firewall windows-7 ftp windows-firewall

我有一个作为服务运行并包含一个 FTP 客户端的应用程序。它需要连接到仅支持 Active FTP 的 FTP 服务器。当我尝试获取文件列表或下载文件时,Windows 防火墙正在断开来自 FTP 服务器的传入连接。(我不相信我们在 Windows XP 或 Windows Vista 中遇到过这个问题。)

主动 FTP 是一种协议,它要求服务器在客户端指定的端口上打开与客户端的连接。( http://slacksite.com/other/ftp.html )

我知道我可以在 Windows 防火墙中打开一个大的端口范围并强制我的 FTP 客户端只使用这些端口,但我猜想 Windows 防火墙会原生支持 Active FTP。

是否需要进行一些设置才能让 Windows 防火墙自动检测活动 FTP 并根据需要打开必要的端口?我可以以编程方式更改该设置吗?

谢谢。

joe*_*rty 5

事情是这样的:无论是在主动模式还是被动模式下,服务器总是使用它一侧的端口 20 进行数据连接,并通过客户端在发出 FTP PORT 命令时指定的任何端口连接到客户端。

查看 Windows 7 防火墙后,您似乎可以创建自定义入站规则,允许从特定远程端口 (20) 连接到给定协议类型 (TCP) 的任何本地端口。您还可以指定此规则适用的本地和远程 IP 地址。

我不得不承认,我从来没有在 Windows 防火墙上胡闹过,但在我看来它可能对你有用。