从Azure VM创建FTP服务器

时间:2019-02-26 00:35:15

标签: azure ftp azure-virtual-machine

我从Azure虚拟机创建FTP服务器并尝试使用专用IP地址ftp://10.0.0.5,然后当我尝试使用公用IP地址时,它说“进入被动模式”即可正常工作

FTP Folder Error

1 个答案:

答案 0 :(得分:1)

听起来好像您正在Passive模式下通过Windows File Explorer访问Azure VM上的FTP服务器,这要求在端口21上的客户端连接服务器之后,FTP服务器打开另一个端口以再次在客户端进行连接首先,但FTP服务器无权将新端口添加到NSG入站规则中。

因此解决方案是关闭客户端的被动模式,以强制使用PORT/Active模式连接FTP服务器。您可以参考现有的SuperUser线程https://superuser.com/questions/249731/ftp-from-windows-explorer-in-active-mode对其进行修复。

这是我在Windows 10中的步骤,如下图。

图1.单击Search按钮并键入Internet Options将其打开

enter image description here

图2.选择Advanced标签并找到Use Passive FTP ...选项将其禁用

enter image description here

然后,您可以尝试再次访问FTP服务器。

任何担心,请随时让我知道。


更新:要使用FtpWebRequestPORT/Active模式连接Azure VM上的FTP服务器,您必须添加代码以在C#中为Passive禁用FtpWebRequest模式如下使用它。

ftpWebRequest.UsePassive = false;

请参阅文档https://docs.microsoft.com/en-us/dotnet/api/system.net.ftpwebrequest.usepassive?view=netframework-4.7.2来了解它。