Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.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上的虚拟机-被动FTP赢得';行不通_Azure_Ftp_Azure Virtual Machine - Fatal编程技术网

Azure上的虚拟机-被动FTP赢得';行不通

Azure上的虚拟机-被动FTP赢得';行不通,azure,ftp,azure-virtual-machine,Azure,Ftp,Azure Virtual Machine,我在许多网站上尝试过这些建议(和、和),但都不起作用 FTP主动和被动都可以从VM到自身工作。FTP活动的作品来自外部世界。FTP被动失败,服务器响应“550本地系统中断了网络连接”(SYN数据包发送到其中一个动态端口后,此消息立即返回控制通道/端口21) 我所做的: 1) 在具有FTP站点的VM上配置IIS 2) 将FTP防火墙支持IP地址设置为Azure VM实例的公共IP地址(值得一提的是,我也尝试过将此字段设置为空,并尝试使用私有IP地址,但均无效) 3) 为FTP控制(TCP/21)、

我在许多网站上尝试过这些建议(和、和),但都不起作用

FTP主动和被动都可以从VM到自身工作。FTP活动的作品来自外部世界。FTP被动失败,服务器响应“550本地系统中断了网络连接”(SYN数据包发送到其中一个动态端口后,此消息立即返回控制通道/端口21)

我所做的:

1) 在具有FTP站点的VM上配置IIS

2) 将FTP防火墙支持IP地址设置为Azure VM实例的公共IP地址(值得一提的是,我也尝试过将此字段设置为空,并尝试使用私有IP地址,但均无效)

3) 为FTP控制(TCP/21)、FTP数据(TCP/20)和FTP动态端口(7000到7003)设置端点

4) 使用appcmd.exe设置FTP的端口范围(即%windir%\system32\inetsrv\appcmd set config/section:system.ftpServer/firewallSupport/lowDataChannelPort:7000/highDataChannelPort:7003)

5) 重新启动FTP服务器(净停止ftpsvc和净启动ftpsvc)

6) 尝试启用和禁用防火墙(netsh advfirewall set global StatefulFtp enable)


有什么想法吗?我已经向Wireshark验证了客户端正在尝试使用动态端口,并且在本地尝试时正在使用动态端口。

在MSDN论坛上收到了答案。显然,管理控制台存在问题,您必须使用Azure Powershell:

我能够在Azure VM上使用被动FTP,而无需使用任何Powershell命令。只需按照以下步骤操作:

上面的文章提供了在Azure VM上设置FTP所需的所有步骤


希望这有帮助

Azure VM终结点有4分钟超时。对于FTP,这意味着如果被动数据传输花费的时间超过4分钟,则主连接(端口21)会超时,因为在AVIVE文件传输时不会发生任何连接

现在您有两个选择:

1. 可以将VM端点的超时设置为30分钟

执行此操作的Powershell命令是:

>获取AzureVM-ServiceName“MyService”-Name“MyVM”|设置AzureEndpoint-Name“MyEndpoint”-idletimeoutminutes 30 |更新AzureVM

更多信息

2.创建ILIP(实例级IP)

您可以创建ILIP以绕过VM webservice enpoint层。执行此操作的PowerShell命令是:

Get-AzureVM-ServiceName“MyService”-Name“MyVM”| Set-AzurePublicIP-PublicIPName“MyNewEndpoint”| Update-AzureVM


更多信息。

值得一提的是,它是Server 2012。有人有什么想法吗?也试过Server 2008。尝试了IIS8(服务器2012)和IIS7.5(服务器2008)以及FileZilla服务器,每个都使用自定义端口范围。FTP被动模式在机器上本地运行良好。Windows防火墙未影响连接。我认为这与Azure的端点有关。请帮忙!有效答案:不适合我:-(自从我提出这个问题后,Microsoft一定已经修复了它。这曾经是一件非常痛苦的事情。你可以在我上面的评论中看到我不得不经历的困难。谢谢!你知道如何使用azure cli来完成这项工作吗?