Mr. Flibble Asked: 2009-09-17 07:28:06 +0800 CST2009-09-17 07:28:06 +0800 CST 2009-09-17 07:28:06 +0800 CST 如何为 FTP 服务器配置 Windows 防火墙 772 我需要为主动和被动 FTP 打开哪些端口才能访问 Windows FTP 服务器(在 Server 2008 上运行)?单独打开 21 是不够的。 firewall 3 个回答 Voted Best Answer squillman 2009-09-17T07:34:53+08:002009-09-17T07:34:53+08:00 取决于您使用的是主动还是被动 ftp。这是来自该站点的图表,它从端口的角度很好地解释了差异: Active FTP : command : client >1023 -> server 21 data : client >1023 <- server 20 Passive FTP : command : client >1023 -> server 21 data : client >1023 -> server >1023 所以: 活动 FTP - 防火墙必须允许 TCP/21 上的传入连接和 TCP>1023 上的传出连接。 被动 FTP - 防火墙必须允许 TCP/21 和 TCP>1023 上的传入连接 如果您要使用被动 ftp,最好的办法是配置 ftp 服务器以使用特定(有限)端口范围供客户端连接到数据流,然后在防火墙上打开该范围。 PEra 2009-09-17T10:54:24+08:002009-09-17T10:54:24+08:00 如果您使用真正的防火墙,它将能够查看PASVFTP 控制通道 (TCP/21) 中的命令并相应地打开数据端口。因此,您只需要打开 TCP/21,其余的由防火墙处理。 当然,通常的 SOHO 路由器(和软件 FW)不会为您执行此操作。squillman在这种情况下,您应该像推荐的那样坚持定义的端口范围(每个并发用户约 3 个端口) 。 Patrick 2010-12-10T12:11:56+08:002010-12-10T12:11:56+08:00 我有一个类似的奇怪问题,所有端口(pasv 的 21、20 和 5500)在 Windows 防火墙(服务器 2003)中都是打开的,但 telnet 证明当防火墙打开时,即使是 21 也被阻止。防火墙关闭时一切正常。最重要的是,一天中的某些时间(完全随机)无论如何都可以正常工作。直到没有。如果没有,关闭 Windows 防火墙可以修复它。它不是 FTP 服务器,甚至没有记录连接尝试。
取决于您使用的是主动还是被动 ftp。这是来自该站点的图表,它从端口的角度很好地解释了差异:
所以:
如果您要使用被动 ftp,最好的办法是配置 ftp 服务器以使用特定(有限)端口范围供客户端连接到数据流,然后在防火墙上打开该范围。
如果您使用真正的防火墙,它将能够查看
PASV
FTP 控制通道 (TCP/21) 中的命令并相应地打开数据端口。因此,您只需要打开 TCP/21,其余的由防火墙处理。当然,通常的 SOHO 路由器(和软件 FW)不会为您执行此操作。
squillman
在这种情况下,您应该像推荐的那样坚持定义的端口范围(每个并发用户约 3 个端口) 。我有一个类似的奇怪问题,所有端口(pasv 的 21、20 和 5500)在 Windows 防火墙(服务器 2003)中都是打开的,但 telnet 证明当防火墙打开时,即使是 21 也被阻止。防火墙关闭时一切正常。最重要的是,一天中的某些时间(完全随机)无论如何都可以正常工作。直到没有。如果没有,关闭 Windows 防火墙可以修复它。它不是 FTP 服务器,甚至没有记录连接尝试。