ftp切换被动模式,走内网Ip

Linux的FTP服务器搭建
先描述下场景,用ftp搭建服务器,作为公司内部的一个下载站使用 
看下下方报错截图linux上搭建的FTP服务器,用windows访问出现报错 
先分析200,227的的意思
200访问成功(可能是没有权限,所有还是报错)
227进入被动模式(ip地址(内网IP)。id端口)
报错原因
1.ftp分为主动与被动模式俩种(passive command令进行切换)
2.如果是阿里云服务器,切记配置安全组端口(ftp默认20/21);

原理:

虚拟主机在传输数据的过程中,采用被动模式,可能由于端口无法打开导致传输失败,尝试切换工作模式,可解决这个问题。

因为FTP有两种工作模式,主动式和被动式 :

· 主动方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时, 客户端在命令链路上用PORT命令告诉服务器:我打开了***X端口,你过来连接我。于是服务器从20端口向客户端的***X端口发送连接请求,建立一条数据链路来传送数据。

· 被动方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时, 服务器在命令链路上用PASV命令告诉客户端:我打开了***X端口,你过来连接我。于是客户端向服务器的***X端口发送连接请求,建立一条数据链路来传送数据。

图片所述:客户端向服务器的8888 端口发送链接请求,服务器在命令链路上用PASV命令告诉客户端:

我打开了6010端口 :计算端口 倒数第二个数字 23 * 256 + 最后一个数字122 = 6010 你过来连接我。于是客户端向服务器的***X端口发送连接请求,建立一条数据链路来传送数据。注意 前面的IP的内网ip 172.31.54.133,内网IP根本不可能外网连通的,所以这个问题的根本原因在于,被动模式ftp链接用的内网IP,这个只有在阿里云上会遇到这种情况(据说腾讯云等其他这个问题)。所有重点是需要在ftp的配置文件主动将 被动模式链接的服务器外网IP配置上去,问题即可解决。

如果不是默认端口,像本人 修改了etc/services文件的data-ftp 8887(替换原20) ftp 8888(替换原21)和文件vsftp.config(ftp的配置文件) listen_port=8888;由于切换被动模式需要开启如下 :

,

关闭listen_ipv6(注释掉或者NO); allow_writeable_chroot=YES ;pasv_enable=YES pasv_min_port=1024 pasv_max_port=65535

pam_service_name=vsftpd  userlist_enable=YES  ;listen_port=8888;pasv_address= 服务器的外网IP(这个是最重要的解决227问题)
linux防火墙规则,没有添加ftp的规则(不想配置规则,防火墙关掉也可以,不建议这么做);将 以上涉及的端口防火墙 开放

(8888,8887,1024,65535);

重启ftp:systemctl restart vsftpd

阿里云服务安装FTP服务器报200 227 entering passive mode(被动模式)错误相关推荐

  1. FileZilla客户端连接腾讯云FTP服务器时出现“227 Entering Passive Mode”

    FTP的主动模式(PORT Mode)及被动模式(Passive Mode) FTP的特殊性: 大多数的TCP服务是使用单个的连接,一般是客户向服务器的一个周知端口发起连接,然后使用这个连接进行通讯. ...

  2. 阿里云上安装MQTT服务器

    在阿里云上安装好服务器后,进入linux控制台界面安装EMQX 执行wget https://www.emqx.com/zh/downloads/broker/5.0.3/emqx-5.0.3-ubu ...

  3. FTP连接时出现“227 Entering Passive Mode” 的解决方法(附加实际案例)

    FTP连接时出现"227 Entering Passive Mode" 的解决方法 前段时间在本地的win7搭建了一个简单的FTP服务器用来测试在linux服务器上生成的批量报文, ...

  4. FTP连接时出现“227 Entering Passive Mode” 的解决方法

    今天从公网的服务器连接本地内网的FTP server copy文件时,系统老是提示227 Entering Passive Mode (xxx,xxx,xxx,xxx,x),很是奇怪,于是上网找资料仔 ...

  5. pycharm + 阿里云 + python3安装 + 执行服务器文件

    之前就写好的突然发现忘了传~应该是当时比较忙或者太懒了.. 由于我不想在本机上跑脚本,也不想浪费阿里云~~,就想通过pycharm的SSH功能实现使用远程开发环境,让pycharm执行服务器上的文件, ...

  6. 阿里云主机安装开发工具包报错处理

    环境: 阿里云主机系统版本:Centos6.2 x64 错误: 安装开发工具包报错,使用163yum源: # yum  groupinstall   "Development tools&q ...

  7. java FTP连接时出现“227 Entering Passive Mode”的解决方法

    FTPClient ftpClient = new FTPClient();ftpClient.connect(ftpAddress, ftpPort); // 连接FTP服务器ftpClient.l ...

  8. 解决FTP连接时报错 227 Entering Passive Mode问题

    错误如图所示: 解决办法: 打开控制面板.点击网络和Internet.点击internet选项 点击高级 找到被动ftp,去掉勾 我的问题就这样解决了. 若还是ftp不成,就把主动ftp勾去掉,被动f ...

  9. FTP连接时出现“227 Entering Passive Mode”的解决方法

    modprobe ip_nat_ftpservice vsftpd restartservice vsftpd status

  10. 阿里云自动java和mysql数据库_阿里云服务器之基于Linux系统部署上线JavaWeb项目和连接MySQL数据库(从购买云服务器到发布JavaWeb项目全套详细流程)...

    阿里云服务器之基于Linux系统部署上线JavaWeb项目和连接MySQL数据库(从购买云服务器到发布JavaWeb项目全套详细流程) (仅此纪念人生第一篇学习博客) 前阵子接了一个小小的JavaWe ...

最新文章

  1. 仙居机器人_【101巨喜讯】又一个全国冠军!仙居学子机器人全国赛获奖啦!
  2. 在特定情况下的简单SSO实现方案
  3. 人一生要解决的50个关键问题
  4. django时间格式化加时区控制
  5. Response文件下载
  6. Check failed: error == cudaSuccess (74 vs. 0) misaligned address
  7. cannot resolve symbol ‘log‘问题解决
  8. 服务器硬盘 主板,服务器主板和普通主板有什么区别?
  9. Taro+react开发(17)--赋值错误回显异常
  10. java web项目中的根路径踩坑
  11. 计网期末复习 - 数据报分片
  12. 苹果要换Type-C接口?丁磊建议统一充电器接口 工信部回复来了...
  13. 前端urldecode 特殊字符处理导致后端无法解析
  14. 【linux高级程序设计】(第八章)进程管理与程序开发 4
  15. Spark 机器学习 —— 从决策树到随机森林
  16. Modbus RTU转Modbus TCP网关的应用
  17. WINDOWS系统一套基于现成软件的局域网视频转播系统方案
  18. 解决vscode的报错:Java 11 or more recent is required to run the Java extension
  19. 【转】C++后台开发应该读的书
  20. 数字证书原理[转载]

热门文章

  1. Android流媒体播放器
  2. QT应用编程: 基于FFMPEG设计的流媒体播放器(播放rtmp视频流)
  3. BufferedOutputStream源码分析与flush方法
  4. hang计算机术语大全,行业英语学习
  5. 20155322 2016-2017-2 《Java程序设计》第7周学习总结
  6. PDF文件太大,两个超级实用方法压缩PDF
  7. 这7种类型的食物可能引起 “痘痘”
  8. FTP上传失败报错解决
  9. FDA“长寿药”NMN被爆几毛一克,富豪被收天价智商税?
  10. Python自动化测试进阶系列——自动发邮件功能