整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

FTP文件传输协议介绍

1. 简介

文件传输协议(英语:,缩写:FTP)是一个用于在计算机网络上在客户端和服务器之间进行文件传输的应用层协议。文件传送(file )和文件访问(file access)之间的区别在于:前者由FTP提供,后者由如NFS等应用系统提供。RFC 959定义了此规范。

FTP是一个8位的客户端-服务器协议,能操作任何类型的文件而不需要进一步处理,就像MIME或Unicode一样。但是,FTP有着极高的延时,这意味着,从开始请求到第一次接收需求数据之间的时间,会非常长;并且不时的必须执行一些冗长的登录进程。

2. 概述

FTP服务一般运行在20和21两个端口。端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流,并且是命令通向ftp服务器的进口。当数据通过数据流传输时,控制流处于空闲状态。而当控制流空闲很长时间后,客户端的防火墙会将其会话置为超时,这样当大量数据通过防火墙时,会产生一些问题。此时,虽然文件可以成功的传输,但因为控制会话,会被防火墙断开;传输会产生一些错误。

FTP虽然可以被终端用户直接使用,但是它是设计成被FTP客户端程序所控制。

运行FTP服务的许多站点都开放匿名服务,在这种设置下,用户不需要帐号就可以登录服务器,默认情况下,匿名用户的用户名是:“”。这个帐号不需要密码,虽然通常要求输入用户的邮件地址作为认证密码,但这只是一些细节或者此邮件地址根本不被确定,而是依赖于FTP服务器的配置情况。

3. 目的促进文件的共享(计算机程序或数据)。鼓励间接或者隐式的使用远程计算机。向用户屏蔽不同主机中各种文件存储系统(File system)的细节。可靠和高效的传输数据。4. 传输方式

FTP的传输有两种方式:ASCII、二进制。

ASCII传输方式二进制传输模式5. 传输模式

FTP有两种使用模式: (PORT方式,主动模式),Passive (PASV,被动模式)。主动模式要求客户端和服务器端同时打开并且监听一个端口以创建连接。在这种情况下,客户端由于安装了防火墙会产生一些问题。所以,创立了被动模式。被动模式只要求服务器端产生一个监听相应端口的进程,这样就可以绕过客户端安装了防火墙的问题。

主动模式(PORT)FTP 客户端首先和服务器的TCP 21端口建立连接,用来发送命令;客户端需要接收数据的时候在这个通道上给服务器发送PORT命令。PORT命令包含了客户端用来接收数据的端口号;在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。(FTP server必须和客户端建立一个新的连接用来传送数据。)被动模式(PASV)FTP 客户端首先和服务器的TCP 21端口建立连接,用来发送命令(建立控制通道和模式类似);建立连接后发送Pasv命令。服务器收到Pasv命令后,打开一个临时端口(端口号大于1023小于65535)并且通知客户端在这个端口上传送数据的请求;客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口传送数据。

简而言之,主动模式的FTP是指服务器主动连接客户端的数据端口,被动模式的FTP是指服务器被动地等待客户端连接自己的数据端口。

被动模式的FTP通常用在处于防火墙之后的FTP客户端访问外界FTP服务器的情况,因为在这种情况下,防火墙通常配置为不允许外界访问防火墙之后主机,而只允许由防火墙之后的主机发起的连接请求通过。因此,在这种情况下不能使用主动模式的FTP传输,而被动模式的FTP可以良好的工作。(相反,客户端访问处于防火墙之后的FTP服务器则要用到主动模式)

6. SFTP和FTPS的区别都是为ftp连接加密,协议非常相似。FTPS是借助ssl协议加密,SFTP是借助ssh加密。ssl是为http/smtp等加密设计的,ssh是为telnet/ftp等加密、建立传输通道而设计的。其实ssh建立传输通道就是为了加密和传输,而且这个通道是可以用来远程登录。如果只说它们的功能,通俗的讲,ssh就像铺管子,ssl就像打包裹,铺管子和打包裹都会使数据安全,都是一个制作密钥的过程,而因为ssh是一个管子所以它很适合ftp的安全传输。

简单的讲:sftp协议是ssh中的一条独立的协议,利用sftp服务器就可以传输数据。

而ftps是ftp-over-ssl的意思,即ftp借助ssl协议加密传输,不但要用ftp服务器还要用ssl协议加密。(如果是ftp-over-ssh,就是完全不同于sftp的传输方式了,就是利用ftp服务器和ssh协议加密传输数据。 )

这篇文章有用吗?

点击星号为它评分!

提交评分

平均评分 1 / 5. 投票数: 1

很抱歉,这篇文章没有帮助到您!

让我们改善这篇文章!

告诉我们如何改善这篇文章?