阿里云搭建FTP服务器访问报错 200,227错误


问题描述

阿里云 服务器使用 xlight 搭建了一个FTP服务器,搭建完成后请求报错

打开FTP服务器上的文件夹时发生错误。请检查是否有权限访问该文件夹。

详细信息:

200 Type set to A.

227 Entering Passive Mode (****)

 

分析

ftp服务器有两种工作模式,port和pasv(主动和被动)

这两种模式都是客户端先向服务器端发出请求,服务器建立链接,以服务器为对象,当传输数据时,如果是服务器从20端口向客户端空闲端口发送请求建立链接,就是port(主动),反之,如果是客户端向服务器空闲端口请求建立链接,就是pasv(被动)

由于 阿里云安全组规则 存在的原因,我们一般时只允许需要的端口,其他端口都屏蔽了

被动模式 pasv 时,端口 又是 随机 的,我们不能为了一个FTP 把所有端口都在 安全组规则 中放开,那么可以设置一个端口范围 ,这样 安全组规则 设置就不用那么暴力了

 

解决办法

打开 xlight 的设置

点击 Option for PASV mode IP and port 右边的 设置 按钮

默认是左边这个图,我们改成右边的配置

阿里云搭建FTP服务器访问报错 200,227错误

 

然后在阿里云的 安全组规则中添加 50000到50010 的配置

设置如下

 

设置完毕后重启 xlight 后 ftp服务就能正常访问了

 

解决方案二 ( 推荐 ) 开通20端口

FTP文件传输协议基于21端口和20端口

21端口:FTP传输控制信息端口;

20端口:FTP传输数据端口,是否会用到20端口与FTP传输模式有关,主动模式使用20端口传输,被动模式下服务器端和客户端协商决定端口。

阿里云ECS云服务器的默认安全组规则是没有开放FTP端口的,为了避免FTP使用遇到问题,可以同时配置21端口和20端口,参考:添加安全组规则 - 阿里云,安全组是一种虚拟防火墙,ECS实例是通过安全组来配置端口的。

在实际的FTP文件传输过程中,是否会用到20端口与FTP客户端设置的传输模式有关,主动模式使用20端口传输,被动模式使用哪个端口是协商决定的。那么什么是主动模式?什么是被动模式?

主动模式:客户端向FTP服务器发送端口信息,由服务器主动连接该端口;

被动模式:FTP服务器开启并发送端口信息给客户端,由客户端连接该端口,服务器被动接受连接。

 

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
YES开发框架
上一篇:阿里云搭建FTP服务器访问报错 200,227错误
下一篇:DevExpress 使用GridControl 会计凭证财务金额分位显示
评论列表

发表评论

评论内容
昵称:

联系我们
联系电话:15090125178(微信同号)
电子邮箱:garson_zhang@163.com
站长微信二维码
微信二维码