Ott*_*tto 10 ftp filezilla azure
大家,早安,
我在 MS Azure 中托管的 WIN 2012 R2 服务器上托管 FileZilla FTP 服务器(被动模式)。
FTP 传输通常工作正常 - 每天都在运行多个 FTP 上传和检索。
我在 Azure 门户/端打开了相对较大范围的端口(端点)以允许被动模式。
偶尔(平均每 2 天一次)我看到 FTP 传输问题如下:
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> MDTM dev_updates/file1
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 213 20160728071048
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> MDTM dev_updates/file2
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 213 20160728071048
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> MDTM dev_updates/file3
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 213 20160728071050
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> CWD dev_updates/Infrastructure/folder
8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 250 CWD successful. "dev_updates/Infrastructure/folder" is current directory.
8/8/2016 9:10:00 AM - USER_FILEZILLA (62.154.Y.X)> PASV
8/8/2016 9:10:00 AM - USER_FILEZILLA (62.154.Y.X)> 227 Entering Passive Mode (104,40,Y,X,234,235)
8/8/2016 9:10:00 AM - USER_FILEZILLA (62.154.Y.X)> 426 Connection closed; aborted transfer of ""
8/8/2016 9:10:01 AM - USER_FILEZILLA (62.154.Y.X)> disconnected.
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> Connected on port 21, sending welcome message...
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 220-FileZilla Server 0.9.57 beta
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 220-written by Tim Kosse (tim.kosse@filezilla-project.org)
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 220 Please visit https://filezilla-project.org/
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> USER USER_FILEZILLA
8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 331 Password required for
Run Code Online (Sandbox Code Playgroud)
如上所述,每天(自动)进行多次 FTP 传输,覆盖分配给 FileZilla FTP 服务器的 140 多个端口范围(以被动模式运行)。
我在 Azure 中托管的 VM 上运行了 Wireshark 捕获;我可以从 Wireshark 捕获中看到,“426 连接关闭”事件实际上是由 Azure 中的 VM 来源的 RST 匹配的,并发送回发出 PASV 命令的客户端(即在上面的示例中,FTP 服务器回复到带有端口的客户端 PASV 命令:234,235 -> 60139;客户端尝试打开到端口 60139 的数据通道以开始传输 -> FTP 服务器立即回复(根据 Wireshark 捕获在 MS 内)发出 RST给客户)。
我想到了 FTP 服务器端的一些临时端口分配问题 -> 所以我减少了允许的动态操作系统临时端口范围以不与 FTP 被动端口范围重叠 - 使用
netsh int ipv4 set dynamicport tcp start=49152 num=10000
Run Code Online (Sandbox Code Playgroud)
另外,我通过命令明确地向 netsh 堆栈添加了端口范围保留
netsh int ip add excludeportrange protocol=tcp startport=60000 numberofports=141 store=persistent
Run Code Online (Sandbox Code Playgroud)
尽管如此,问题仍然偶尔发生。
我在本网站以及 MS Azure technet 会话中阅读了有关 Azure 如何监控端点状态(当属于 LB 集时)的大量技术讨论,但这不适用于我的情况,因为 FTP 被动传输(检索和上传)在保留的 FTP 被动端口范围内的随机端口上通常工作正常。
如果需要,我可以提供其他详细信息 - 同时,我将不胜感激有关服务器和客户端故障排除/调查的其他建议(非常确定问题与网络或网络配置无关)。
我还想询问有关如何调试 winsock 以解决可能的服务器端套接字可用性问题的其他故障排除/调查建议/提示。
| 归档时间: |
|
| 查看次数: |
2504 次 |
| 最近记录: |