Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure网络ActiveFTP问题_Azure_Networking_Ftp_Azure Virtual Machine_Ftp Client - Fatal编程技术网

Azure网络ActiveFTP问题

Azure网络ActiveFTP问题,azure,networking,ftp,azure-virtual-machine,ftp-client,Azure,Networking,Ftp,Azure Virtual Machine,Ftp Client,我们最近已将服务器移动到Azure上。它运行我们的销售点系统,通过FTP将一些文件上传到我们的Web服务器,然后解析并创建产品 销售点软件开发人员有一堆运行FTP.exe的批处理文件,不幸的是,这些文件不支持被动文件传输(不管您读到什么-quote pasv&literal pasv不工作)。所以我们一直在使用活动传输,不幸的是这不太适合Azure 服务器正在使用端口10090-10100进行活动连接(我在NSG中创建了一个允许10090-10100的规则),但不幸的是,这根本不起作用 我正在试

我们最近已将服务器移动到Azure上。它运行我们的销售点系统,通过FTP将一些文件上传到我们的Web服务器,然后解析并创建产品

销售点软件开发人员有一堆运行FTP.exe的批处理文件,不幸的是,这些文件不支持被动文件传输(不管您读到什么-quote pasv&literal pasv不工作)。所以我们一直在使用活动传输,不幸的是这不太适合Azure

服务器正在使用端口10090-10100进行活动连接(我在NSG中创建了一个允许10090-10100的规则),但不幸的是,这根本不起作用

我正在试图说服开发人员使用WinSCP重写,这样我们就可以只使用被动传输,但除此之外,我一直在寻找另一种解决方案,到目前为止没有任何效果

我知道这在操作系统中不是问题,因为我已经关闭了Windows防火墙&仍然没有运气

非常感谢您对这个问题的任何帮助或建议

服务器正在使用端口10090-10100进行活动连接(我有 在NSG中创建了允许10090-10100 in)的规则,但不幸的是 这根本不起作用

这是一种按设计的行为,因为VM的NSG InCount规则没有关于随机非特权端口的条目

在主动模式FTP中,客户端从一个随机的非特权端口(N>1023)连接到FTP服务器的命令端口,端口21。然后,客户端开始侦听端口N+1,并将FTP命令端口N+1发送到FTP服务器。然后,服务器将从其本地数据端口(端口20)连接回客户端的指定数据端口

以下是显示的连接,如下所示:

为了测试,我在同一个Vnet中创建了两个VM(关闭windows防火墙),并在VM1上设置FTP,然后使用VM2(禁用使用被动FTP)访问FTP,它可以工作。因为VM1和VM2可以相互连接,并且在同一个Vnet中,NSG不适用于内部网络流量

因此,在这种情况下,活动FTP无法工作,因为服务器无法启动到客户端的连接。也许最安全的方法是被动模式FTP

服务器正在使用端口10090-10100进行活动连接(我有 在NSG中创建了允许10090-10100 in)的规则,但不幸的是 这根本不起作用

这是一种按设计的行为,因为VM的NSG InCount规则没有关于随机非特权端口的条目

在主动模式FTP中,客户端从一个随机的非特权端口(N>1023)连接到FTP服务器的命令端口,端口21。然后,客户端开始侦听端口N+1,并将FTP命令端口N+1发送到FTP服务器。然后,服务器将从其本地数据端口(端口20)连接回客户端的指定数据端口

以下是显示的连接,如下所示:

为了测试,我在同一个Vnet中创建了两个VM(关闭windows防火墙),并在VM1上设置FTP,然后使用VM2(禁用使用被动FTP)访问FTP,它可以工作。因为VM1和VM2可以相互连接,并且在同一个Vnet中,NSG不适用于内部网络流量


因此,在这种情况下,活动FTP无法工作,因为服务器无法启动到客户端的连接。也许最安全的方法是被动模式FTP。

谢谢,这是一种痛苦,因为有一些自定义软件使用主动FTP,开发人员并不真正想更改。但我想现在他们将被迫改变。对此无能为力。谢谢你在这方面的帮助。谢谢,这是一个痛苦,因为有自定义软件使用活动FTP,开发人员并不真的想改变。但我想现在他们将被迫改变。对此无能为力。谢谢你的帮助。