阿里云搭建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 右边的 设置 按钮

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

 

然后在阿里云的 安全组规则中添加 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开发框架
上一篇:批处理修改计算机名【不用重启】
下一篇:DevExpress 使用GridControl 会计凭证财务金额分位显示
评论列表

发表评论

评论内容
昵称:
关联文章

阿里FTP服务器访问 200,227错误
RabbitMQ服务器环境方法(Windows)
使用node启动本地项目,本地服务器
Elasticsearch使用系列-ES简介和环境
Serv-U FTP服务器配置
window远程桌面连接:出现身份验证错误。要求的函数不受支持
ASP.NET+MVC入门踩坑笔记 (一) 创建项目 项目配置运行 以及简单的Api
05、阿里物联网MQTT对接
04.阿里物联网套件使用
IIS服务器访问woff2字体文件 net::ERR_ABORTED 404 (Not Found)
06、阿里微消息队列MQTT对接
Python windows服务: Installing service ALicense Error installing service: 拒绝访问
Visual Studio(VS)生成错误:尝试访问已卸载的 AppDomain。
html发布到服务器后部分jpg:net::ERR_BLOCKED_BY_CLIENT
FTP服务端软件 Xlight
一劳永逸,解决.NET发布服务器的时区问题
插入代码页面
服务器安全:限制外网访问解决方案
支付宝获取用户信息时,提示 对不起,访问了 E004:AUTH_REDIRECT_URL_NOT_IN_WHITE
PC端编译 Empty block statement no-empty

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