设想:
1 个以被动模式运行的 ftp 服务器(启用和保留端口范围为 5000 至 6000)
1 个客户端 ftp 尝试以被动模式连接到上面的服务器 ftp。
客户端是否应该在防火墙上打开 5000 到 6000 的端口?
我试图理解这一部分,并且看到了很多关于被动模式与主动模式的不同文章,但我不理解这种行为。
答案1
对于被动 FTP,控制连接(默认在端口 21)和数据连接(到 FTP 服务器指示的 PASV 端口)均由 FTP 客户端发起。通常,允许用户与远程服务器建立 FTP 连接的防火墙也会允许客户端建立相关的数据连接。
许多大型网站根本不允许用户直接连接到互联网,并且要求所有流量都使用代理服务器。被动端口范围对这些用户来说可能是也可能不是问题...
更不常见的是,用户可以直接连接到互联网,但只能连接到有限数量的端口,例如,80 和 443 用于网络流量,其他端口默认被阻止。
在这种情况下,任何稍微高级的防火墙都可以配置为允许 FTP 协议,并将加载特定的辅助模块。防火墙为 FTP 控制连接打开端口 21,并将检查分配给 FTP 客户端的 PASV 端口的控制流量。防火墙中将动态打开该被动端口,以允许建立数据连接(但仅限于该客户端和该特定 FTP 服务器上的特定端口之间),并且当控制连接终止时,该权限将被撤销。