zoukankan      html  css  js  c++  java
  • 常见协议基础知识总结--FTP协议

    FTP协议是一种基于客户端和服务器的文件传输协议,属于应用层协议,基于传输层的TCP协议;

    FTP主要分成主动模式和被动模式两种传输方式,

    方式是相对服务器而言的,服务器主动发起数据连接即主动方式,使用固定的20端口,客户端主动发起数据连接就是被动方式:

    主动模式(PORT方式):

    FTP客户端随机一个非特权端口N,与ftp服务器的21端口(控制或者命令端口)建立连接;当客户端需要传输数据的时候,会发送

    PORT命令道服务端,其中包含有客户端本地打开的数据接收监听端口(N+1),服务器端收到PORT后,会使用20数据端口,与客户端

    的数据端口建立连接,然后发送数据;

    被动模式(PASV方式):

    FTP客户端随机一个非特权端口N,与ftp服务器的21端口(控制或者命令端口)建立连接;当客户端要传输数据的时候,会发PASV

    命令道服务器,服务器收到命令之后,开启一个非特权端口监听,并且将该端口传送给客户端,客户端会使用端口

    N+1来与服务器端口建立连接,然后发送数据;

    防火墙设置的时候,一般不允许外部发起的连接;会导致在服务器PASV模式或者客户端PORT模式无法连接的情况;

    在某些四层代理实现漏洞中,当服务器以主动模式建立连接,并且快速发送数据,然后fin,可能导致代理的另一端没有来得及完成三次

    握手就被断开,从而导致数据传输失败;

  • 相关阅读:
    monkeyrunner之夜神模拟器的安装与使用(二)
    monkeyrunner之安卓开发环境搭建(一)
    MySQL 返回未包含在group by中的列
    MySQL数据库初体验
    MongoDB安装
    关于数据库你必须知道的事~
    PostgreSQL中的MVCC 事务隔离
    深入浅出MySQL之索引为什么要下推?
    Java集合篇:Map集合的几种遍历方式及性能测试
    Oracle11g:数据库恢复总结
  • 原文地址:https://www.cnblogs.com/wanpengcoder/p/3588260.html
Copyright © 2011-2022 走看看