为什么Filezilla尝试在FTP服务器范围之外的端口上切换到被动模式?

我有一个运行vsftp的OpenSuSE框。 它在我们的托pipe公司的防火墙后面。 他们控制着防火墙,我无法访问它。 它具有通过10.xxx从我们的VPN无限制的访问,公共IP地址41.xxx上的端口20,21,40000-40500被转发给它。

从我们的VPN,一切工作正常。 但是,从外面看,我有问题。 当客户端切换到被动模式时,服务器响应

进入被动模式(10,x,x,x ,, 157,213)

在Filezilla中,我收到消息:

进入被动模式(41,x,x,x,228,63)

我已经把端口分别设为40248和58203。 在我的vsftpd.conf文件中,我有行:

pasv_max_port = 40500

pasv_min_port = 40000

#pasv_address = 10.xxx

这与我正在转发的端口相对应。

切换到被动模式后,客户端不会再收到来自服务器的响应。 我怀疑这是因为它试图连接到一个不能访问的IP地址,在一个没有被转发到服务器的端口上,服务器没有在该端口上监听连接。

我试过改变

pasv_address设置= 41.xxx

在configuration文件中,但是它实现的所有function都是断开与VPN的连接。 一旦连接源于41.xxx,端口就不匹配。

我需要改变我的configuration,使之工作?

基于服务器和客户端日志之间的IP也不同,我会怀疑防火墙正在拦截连接并试图进行NAT转换(尽pipe如果防火墙正确地执行此操作,它仍然可以工作)。 你可以尝试使用SSL / TLS进行连接,以便防火墙不会与控制连接混淆?