FTP原理详细介绍

一:FTP功能简介:

1:FTP服务器能够进行档案的传输与管理功能;

2:可以依据使用者登入的情况分为三种不同的身份,分别是

2.1:实体账户:real user

2.2:访客:guest

2.3:匿名登录者anonymous

3:FTP利用系统的syslog进行数据的记录,包括了用户曾经下达的命令与用户传输数据(传输时间、档案大小)的记录,日志目录/var/log/

4:将使用者的工作范围局限在用户的指定目录中,避免其他多余的操作;

二:FTP服务器概述

1:FTP服务器默认使用TCP协议的20、21端口与客户端进行通信。21端口用于建立控制连接,并传输FTP指令。20端口用于建立数据连接,传输数据流。

2:根据FTP服务器在建立数据连接过程中的主、被动关系,FTP数据连接分为主动模式和被动模式。

2.1:主动模式:由服务器主动发起数据连接;

2.2:被动模式:服务器被动等待数据连接;

二:FTP主动模式连接:

FTP的传输使用的是TCP封包协议;不过FTP服务器使用了两个联机,分别是命令信道与数据流通道(ftp-data)。两次联机都需要三次握手;先以FTP预设的主动式联机进行说明:

FTP主动式联机图

1:建立命令通道的联机

如图所示,客户端会随机取一个大于1024以上的端口(port AA)来与FTP服务器端的port21达成联机,这个过程为三次握手,达成联机后用户便可以对FTP下达指令,包括查询文件名、下载、上传等指令;

2:通知FTP服务器端使用Actvive且告知连接的端口

FTP服务器的21端口用于命令的下达,但当涉及数据流传输,就需要另外一个联机。当客户在需要数据的情况下,会告知服务器用什么方式联机,如果是主动式(Active),客户端随机启用一个端口(port BB),通过命令通道告知FTP服务器,等待FTP服务器联机;

3:FTP服务器主动向客户端联机:

FTP服务器由命令通道了解客户端的需求后,主动由20端口向客户端的port BB进行三次握手联机。此时FTP与客户端建立两条联机,分别用于命令的下达和数据的传递。

注意:数据流通道是在有数据传输的行为时才会建立的通道,并不是一开始连接到FTP服务器就建立的;

三:FTP被动模式连接:

111.jpegFTP被动联机图

1:用户与服务器建立命令信道:

与主动联机图第一步相同;

2:客户端发出PASV联机请求:

当有使用数据信道的指令时,客户端可透过命令通道发出PASV的被动联机要求,并等待服务器回应;

3:FTP服务器启动数据端口,通知客户端

如果FTP服务器能够处理被动式联机,此时FTP服务器先启动一个随机或者自定义某一范围的端口监听。然后FTP服务器通过命令通道告知客户端启动的端口(port PASV),等待客户端联机;

4:客户端随机取用大于1024的端口进行联机:

客户端随机取用一个大于1024的端口号来对FTP的port PASV进行三次握手联机。此时FTP与客户端建立两条联机,分别用于命令的下达和数据的传递。

版权申明:本站文章均来自网络,如有侵权,请联系01056159998 邮箱:itboby@foxmail.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

猜你还会喜欢下面的内容

    无相关信息

中国领先的互联网域名及云服务提供商

为您提供域名,比特币,P2P,大数据,云计算,虚拟主机,域名交易最新资讯报道

域名注册云服务器