主动和被动是 FTP 可以运行的两种模式。主动 FTP 是最早的 FTP 模式,尽管现在大多数连接都是通过被动 FTP 方法完成的。但什么是被动 FTP 和主动 FTP,它们有何区别?哪一种更安全且更容易设置?在这里,我们尝试回答有关主动 FTP 与被动 FTP 的所有常见问题。但让我们从详细的定义开始:
什么是主动 FTP?

比较 FTP 主动模式与被动模式,主动模式是一种较旧的 FTP 连接方法,也有优点和缺点。在 FTP 连接中,您有一个客户端和一个服务器。这两台计算机通过两个端口连接。一个称为命令端口,另一个称为数据端口。服务器和客户端必须决定使用哪个端口号来相互连接。以下是主动模式(模糊)的进行方式:
- 客户端使用随机端口向服务器的端口 21 发送命令(PORT 命令)。该命令告诉服务器应连接到客户端的哪个数据端口。
- 服务器使用端口 20 到达该端口并建立连接。
此过程称为“主动”,因为客户端主动指定它希望服务器连接到的端口号。在主动 FTP 中,服务器是根据客户端命令发起连接的服务器。但什么是被动 FTP?
什么是被动 FTP?

被动 FTP 是一种较新的 FTP 模式,被认为更安全且更易于使用。与Active FTP类似,客户端向服务器的21端口发送命令。但这次客户端发送的命令名为PASV命令。然后服务器决定要通过哪个端口接收数据。然后客户端发起连接。
所以事情是这样的:
- 客户端使用随机端口向服务器的21端口发送命令(PASV命令)。
- 服务器通过指定它想要使用的数据端口(这是一个随机端口)来回答。
- 客户端使用随机端口将数据发送到已识别的服务器端口。
请注意,服务器的数据端口现在也是随机选择的。因此,被动 FTP 中仍然使用端口 21 作为服务器的命令端口,但服务器的数据端口现在是随机的(而不仅仅是端口 21)。
另请注意,客户端正在启动两个端口的连接。
FTP 主动与被动之间的区别

正如我们提到的,主要区别在于,在主动 FTP 中,服务器发起数据连接,而在被动 FTP 中,由客户端发起数据连接。这会导致一些对于数据传输的安全性和便利性非常重要的更改。在下文中
主动 FTP 与被动 FTP 的安全性
主动FTP始终使用端口21(命令)和20(数据)来传输信息。这意味着如果有人要攻击您的网络,他们已经知道要瞄准哪些端口。
在被动 FTP 中,服务器端的数据端口是随机的。因此,尽管您仍将使用端口 21 进行命令,但实际传输更难拦截。
另一方面,要使用被动模式,服务器需要打开更多端口,因为这次数据端口将是随机的。这可能会给服务器带来一些漏洞。服务器管理员通常会限制开放端口的范围,以限制可能的攻击者的机会。
需要远程桌面吗?
可靠、高性能的 RDP 服务器,正常运行时间为 99.95。随身携带您的桌面前往美国、欧洲和亚洲的所有主要城市。
获取 RDP 服务器防火墙问题中的主动 FTP 与被动 FTP
如您所知,当涉及到网络连接时,防火墙可能会成为问题。他们的工作是阻止来自未知端口的任何连接尝试。这个问题对于客户端防火墙来说更为严重。由于服务器的防火墙期望来自未知端口的更多进展。
在主动 FTP 中,客户端通过随机端口接收来自服务器的连接。因此客户端的防火墙可能会阻止连接。
在被动 FTP 中,客户端启动两个连接。因此更容易毫无问题地通过客户端的防火墙。服务器的防火墙仍然会导致问题,因为这次它的数据端口是随机的。但这通常是一个较小的问题,因为服务器防火墙已经设置为接收比客户端计算机更多的未知连接。
FTP 主动与被动中的命令通道和数据通道是什么?
回顾一下,命令通道和数据通道如下所示:
- 在主动模式下,客户端的命令和数据端口都是随机的。服务器的命令通道是端口21,服务器的数据通道是端口20。
- 在被动模式下,客户端的命令和数据端口都是随机的。服务器的命令通道是端口21,服务器的数据通道也是随机的。
如果需要,您仍然可以在被动模式下使用端口 20 作为数据通道,或者只是将通道限制在一定范围内。
为什么使用主动 FTP 而非被动 FTP?
比较主动 FTP 与被动 FTP,人们可能使用主动 FTP 而不是被动 FTP 有两个主要原因。一是出于服务器安全原因。被动 FTP 需要通过防火墙打开多个端口,因为数据端口是随机选择的。这使得识别端口变得更加困难,但也留下了许多端口容易受到攻击。
另一个原因是有时配置服务器防火墙很困难或者防火墙超出了您的范围。因此,人们切换到主动方法来通过每个防火墙都知道的端口 20。
Windows 10 VPS 托管
以最便宜的价格为自己获取高效的 Windows 10 VPS 进行远程桌面。在 NVMe SSD 存储和高速互联网上运行的免费 Windows 10。
查看 Windows 10 VPS 计划将 FTP 从主动更改为被动
根据您使用的软件类型,从主动 FTP 更改为被动 FTP 的方法有所不同。
要将 FileZilla 上的 FTP 从主动更改为被动,您可以执行以下步骤:
- 打开 菲莱齐拉
- 从菜单栏转到编辑 > 设置。
- 在“设置”窗口中,转到“连接”,然后转到“FTP”。
- 从传输模式中选择“被动(推荐)”。
- 单击“确定”。
您可以在每个现代 FTP 客户端中找到相同类型的设置。尽管正如我们提到的,您可能会在这两种情况下遇到服务器防火墙的问题,并且需要进行更改。
命令提示符 FTP 是主动还是被动?
Windows 命令提示符 FTP 行是主动的,不支持被动 FTP。您可以使用 WinSCP 或其他命令行客户端通过被动模式连接到您的服务器。
Windows 7 FTP 服务器是主动还是被动?
Windows 7用户可以使用IIS等服务将Windows 7用作服务器。为此,您需要 在 Windows 7 上启用 IIS.
IIS 支持主动和被动,无需启用其中任何一种。但您可以在 IIS 中配置被动端口范围。
另请阅读: 如何在Windows 10上安装IIS?
Web 浏览器使用被动还是主动 FTP?
网络浏览器,例如 Chrome 和火狐浏览器 使用操作系统的网络设置来使用主动或被动 FTP。通常 Windows 使用被动 FTP,因为它是最兼容的模式。
要启用/禁用 Web 浏览器的被动模式,请执行以下步骤:
- 按“WinKey + S”即可显示 Windows 搜索。
- 输入“Internet 选项”并单击它。
- 在“Internet 属性”窗口中,转到“高级”选项卡。
- 向下滚动到浏览部分。
- 选中“使用被动 FTP(用于防火墙...”选项。
- 单击“确定”。
需要远程桌面吗?
可靠、高性能的 RDP 服务器,正常运行时间为 99.95。随身携带您的桌面前往美国、欧洲和亚洲的所有主要城市。
获取 RDP 服务器结论
主动 FTP 与被动 FTP 通过不同的步骤来建立连接,并且它们各有优缺点。选择最适合您的一种。在本文中,我们还回答了有关主动和被动 FTP 的一些最常见问题。