3.5.3.2. 被动连接的规则
被动连接规则为来自互联网到浮动 IP 的连接分配适当的防火墙标记, 这些标记为端口范围 — 10,000 到 20,000 的服务。
警告
如果您要为被动连接限制端口范围,您必须还要配置 VSFTP 服务器使用一个观察端口范围。在
/etc/vsftpd.conf 文件中添加以下行即可达到此目的:
pasv_min_port=10000
pasv_max_port=20000
您还必须控制服务器为被动 FTP 连接向客户端显示的地址。在使用 NAT 进行路由的 LVS 系统中,在
/etc/vsftpd.conf 文件中添加以下行来覆盖连接到 VIP 的真实服务器 IP 地址,该地址就是可用的可以在连接中看到的地址。例如:
pasv_address=n.n.n.n
使用 LVS 系统的 VIP 地址替换 n.n.n.n。
要配置其它 FTP 服务器,请参考有关文档。
范围的幅度应该适用与大多数情况,但您可修改命令中的
10000:20000,将其增加到包含所有可用的不安全端口,以下为 1024:65535。
下面的
iptables 命令有可将任意地址为浮动 IP 的流量分配给防火墙标记为 21 的适当端口的网络效应,然后这些地址可由 IPVS 识别,并正确转发:
/sbin/iptables -t mangle -A PREROUTING -p tcp -d n.n.n.n/32 --dport 21 -j MARK --set-mark 21
/sbin/iptables -t mangle -A PREROUTING -p tcp -d n.n.n.n/32 --dport 10000:20000 -j MARK --set-mark 21
在
iptables 命令中,可使用在 Piranha Configuration Tool的「虚拟服务器」子界面中定义的 FTP 虚拟服务器浮动 IP 地址替换 n.n.n.n。
警告
The commands above take effect immediately, but do not persist through a reboot of the system. To ensure network packet filter settings are restored after a reboot, see 第 3.6 节 “保存网络数据包过滤设置”
Finally, you need to be sure that the appropriate service is set to activate on the proper runlevels. For more on this, refer to 第 2.1 节 “在 LVS 路由器中配置服务”.