精华内容
下载资源
问答
  • FTP协议

    2020-06-19 16:14:36
    FTP协议被广泛使用在互联网上的文件传输。使用客户端/服务器模式,基于TCP传输;工作在OSI七层模型的应用层。 协议概述 FTP采用双TCP连接方式 控制连接使用TCP端口号21 用于在FTP客户端和FTP服务器之间传输FTP...

    目录

    协议背景

    协议概述

    FTP采用双TCP连接方式

    FTP有两种文件传输模式

    FTP采用两种数据传输方式

    工作过程

    主动模式

    被动模式

    抓包分析

    主动模式

    被动模式

     关于FTP的几个问题


    协议背景

    为了提高文件的共享性,在本地主机和远程主机之间高效传送数据。FTP协议被广泛使用在互联网上的文件传输。使用客户端/服务器模式,基于TCP传输;工作在OSI七层模型的应用层。


    协议概述

    FTP采用双TCP连接方式

    控制连接使用TCP端口号21

    用于在FTP客户端和FTP服务器之间传输FTP控制命令及命令执行信息。控制连接在整个FTP会话期间一直保持打开

    数据连接使用TCP端口号20

    用于传输数据,包括数据上传、下载、文件列表发送等。数据传输结束后数据连接将终止。

    FTP有两种文件传输模式

    ASCII模式是默认的文件传输模式,主要特点是:

    本地文件转换成标准的ASCII码再传输

    适用于传输文本文件

    二进制流模式也称为图像文件传输模式,主要特点是:

    文件按照比特流的方式进行传输

    适用于传送程序文件

    FTP采用两种数据传输方式

    主动方式

    被动方式


    工作过程

    主动模式

    在建立数据连接的过程中,由服务器主动发起连接,因此被称为主动方式。主动方式也称为PORT方式,是FTP协议最初定义的数据传输连接方式,主要特点是:

    1. FTP客户端通过向FTP服务器发送PORT命令,告诉服务器该客户端用于传输数据的临时端口号
    2. 当需要传送数据时,服务器通过TCP端口号20与客户端的临时端口建立数据传输通道,完成数据传输

    被动模式

    在整个过程中,由于服务器总是被动接收客户端的数据连接,因此被称为被动方式。被动方式也称为PASV方式,被动方式的主要特点是:

    1. FTP客户端通过向FTP服务器发送PASV命令,告诉服务器进入被动方式。服务器选择临时端口号并告知客户端
    2. 当需要传送数据时,客户端主动与服务器的临时端口号建立数据传输通道,完成数据传输。


    抓包分析

    主动模式

    被动模式


     关于FTP的几个问题

    1、从哪个角度来看待主动和被动

    本质上看,这个主动被动是站在服务端的角度来定义的。是指的谁来发起数据通道的建立,如果是服务端,就是主动模式(我是服务端,我主动来与客户端发起数据通道的建立);如果是客户端来发起数据通道建立,就是被动模式(服务端被动等待客户端来发起数据通道的建立)。

    2、选择模式是服务器还是客户端

    一般FTP服务器都会设置两者模式都支持的。FTP在建立过程中,在命令通道建立完后,由客户端决定采用主动还是被动模式,客户端会通过发送PASS(主动)还是PORT(被动)来告知服务器。

    3、主动、被动模式在边界设备做NAT连接跟踪、防火墙端口/连接控制等网络中可能会遇到不能通过的问题

    采用哪种模式来解决这个问题,通常是FTP服务端来想办法,因为客户端网络边界千差万别不好控制(很难做到让服务器能主动连接客户端数据通道端口),所以服务端要解决让客户端来连接自己数据通道(被动模式),服务端边界设备要支持FTP协议ALG(应用级网关)来支持数据通道的端口识别和控制。

    4、为什么会有主动模式和被动模式

    主动模式对FTP服务器的管理有利,但对客户端的管理不利。因为FTP服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的防火墙阻塞掉。

    被动模式对FTP客户端的管理有利,但对服务器端的管理不利。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而这个端口很有可能被服务器端的防火墙阻塞掉。

    5、主动被动模式会有哪些网络要求

    主动模式是由服务器向客户端发起连接请求,客户端需要放开这个高位端口;被动模式中客户端要连接到服务器的一个随机高位端口,就需要服务端的防火墙放开这个FTP的高位端口。

     

    展开全文
  • ftp协议

    2013-04-25 21:53:51
    用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计

    FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。
    工作原理

    举例说明

      以下载文件为例,当你启动FTP从远程计算机拷贝文件时实际上启动了两个程序:一个本地机上的FTP客户程序,它向FTP服务器提出拷贝文件的请求。另一个是启动在远程计算机的上的FTP服务器程序,它响应你的请求把你指定的文件传送到你的计算机中。FTP采用“客户机/服务器”方式,用户端要在自己的本地计算机上安装FTP客户程序。FTP客户程序有字符界面和图形界面两种。字符界面的FTP的命令复杂、繁多。图形界面的FTP客户程序,操作上要简洁方便的多。

    文件传输协议

      简单地说,支持FTP协议的服务器就是FTP服务器,下面介绍一下什么是FTP协议。(文件传输协议)

     

      一般来说,用互联网的首要目的就是实现信息共享,文件传输是信息共享非常重要的一个内容之一。Internet上早期实现传输文件,并不是一件容易的事,我们知道 Internet是一个非常复杂的计算机环境,有PC,有工作站,有MAC,有大型机,而连接在Internet上的计算机有上千万台,并且这些计算机可能运行不同的操作系统,有运行Unix的服务器,也有运行Dos、Windows的PC机和运行MacOS的苹果机等等,而各种操作系统之间的文件交流问题,需要建立一个统一的文件传输协议,这就是所谓的FTP。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议,这样用户就可以把自己的文件传送给别人,或者从其它的用户环境中获得文件。

    服务器系统

      与大多数Internet服务一样,FTP也是一个客户机/服务器系统。用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。比如说,用户发出一条命令,要求服务器向用户传送某一个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。客户机程序代表用户接收到这个文件,将其存放在用户目录中。

     

      在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。

     

      使用FTP时必须首先登录,在远程主机上获得相应的权限以后,方可下载或上传文件。也就是说,要想同哪一台计算机传送文件,就必须具有哪一台计算机的适当授权。换言之,除非有用户ID和口令,否则便无法传送文件。这种情况违背了Internet的开放性,Internet上的FTP主机何止千万,不可能要求每个用户在每一台主机上都拥有帐号。匿名FTP就是为解决这个问题而产生的。

     

      匿名FTP是这样一种机制,用户可通过它连接到远程主机上,并从其下载文件,而无需成为其注册用户。系统管理员建立了一个特殊的用户ID,名为anonymous, Internet上的任何人在任何地方都可使用该用户ID。

     

      通过FTP程序连接匿名FTP主机的方式同连接普通FTP主机的方式差不多,只是在要求提供用户标识ID时必须输入anonymous,该用户ID的口令可以是任意的字符串。习惯上,用自己的E-mail地址作为口令,使系统维护程序能够记录下来谁在存取这些文件。

     

      值得注意的是,匿名FTP不适用于所有Internet主机,它只适用于那些提供了这项服务的主机。

     

      当远程主机提供匿名FTP服务时,会指定某些目录向公众开放,允许匿名存取。系统中的其余目录则处于隐匿状态。作为一种安全措施,大多数匿名FTP主机都允许用户从其下载文件,而不允许用户向其上传文件,也就是说,用户可将匿名FTP主机上的所有文件全部拷贝到自己的机器上,但不能将自己机器上的任何一个文件拷贝至匿名FTP主机上。即使有些匿名FTP主机确实允许用户上传文件,用户也只能将文件上传至某一指定上传目录中。随后,系统管理员会去检查这些文件,他会将这些文件移至另一个公共下载目录中,供其他用户下载,利用这种方式,远程主机的用户得到了保护,避免了有人上传有问题的文件,如带病毒的文件。

     

      作为一个Internet用户,可通过FTP在任何两台Internet主机之间拷贝文件。但是,实际上大多数人只有一个Internet帐户,FTP主要用于下载公共文件,例如共享软件、各公司技术支持文件等。 Internet上有成千上万台匿名FTP主机,这些主机上存放着数不清的文件,供用户免费拷贝。实际上,几乎所有类型的信息,所有类型的计算机程序都可以在Internet上找到。这是Internet吸引我们的重要原因之一。

    匿名ftp

      匿名FTP使用户有机会存取到世界上最大的信息库,这个信息库是日积月累起来的,并且还在不断增长,永不关闭,涉及到几乎所有主题。而且,这一切是免费的。

     

      匿名FTP是Internet网上发布软件的常用方法。Internet之所以能延续到今天,是因为人们使用通过标准协议提供标准服务的程序。像这样的程序,有许多就是通过匿名FTP发布的,任何人都可以存取它们。

     

      Internet中的有数目巨大的匿名FTP主机以及更多的文件,那么到底怎样才能知道某一特定文件位于哪个匿名FTP主机上的那个目录中呢?这正是Archie服务器所要完成的工作。Archie将自动在FTP主机中进行搜索,构造一个包含全部文件目录信息的数据库,使你可以直接找到所需文件的位置信息。

     
    FTP的用户分类及权限归属

    Real帐户

      这类用户是指在FTP服务上拥有帐号。当这类用户登录FTP服务器的时候,其默认的主目录就是其帐号命名的目录。但是,其还可以变更到其他目录中去。如系统的主目录等等。

    Guest用户

      在FTP服务器中,我们往往会给不同的部门或者某个特定的用户设置一个帐户。但是,这个账户有个特点,就是其只能够访问自己的主目录。服务器通过这种方式来保障FTP服务上其他文件的安全性。这类帐户,在Vsftpd软件中就叫做Guest用户。拥有这类用户的帐户,只能够访问其主目录下的目录,而不得访问主目录以外的文件。

    Anonymous(匿名)用户

      这也是我们通常所说的匿名访问。这类用户是指在FTP服务器中没有指定帐户,但是其仍然可以进行匿名访问某些公开的资源。

     

      在组建FTP服务器的时候,我们就需要根据用户的类型,对用户进行归类。默认情况下,Vsftpd服务器会把建立的所有帐户都归属为Real用户。但是,这往往不符合企业安全的需要。因为这类用户不仅可以访问自己的主目录,而且,还可以访问其他用户的目录。这就给其他用户所在的空间 带来一定的安全隐患。所以,企业要根据实际情况,修改用户所在的类别。[1]

     

     
    FTP客户端

      ftp客户端。体积可以说是最小的了,只有330K,免费中文版不需要汉化和破解的缘故吧。功能也非常强大,应有尽有。可以支持多线程上传;还支持直接上传压缩包后在空间上直接解压。

     

      8uftp是非常精辟的ftp客户端。目前体积最小的FTP客户端工具。

     

      终身免费中文版,非汉化版,非破解版。

     

      涵盖其它FTP工具功能

     

      独家支持多线程上传,使上传速度更快更稳定。

     

      同时支持直接上传压缩包,可在空间上直接解压。也可以在空间上压缩后直接下载压缩包。

     

      8uftp 2.6 升级功能

     

      1.增加远程ftp目录的复制URL功能

     

      2.增加远程ftp目录和本地目录对比的工具

     

     
    通过FTP传输文件的一般步骤

    命令提示

      需要进行远程文件传输的计算机必须安装和运行ftp客户程序。在windows操作系统的安装过程中,通常都安装了tcp/ip协议软件,其中就包含了ftp客户程序。但是该程序是字符界面而不是图形界面,这就必须以命令提示符的方式进行操作,很不方便。

     

      启动ftp客户程序工作的另一途径是使用ie浏览器,用户只需要在ie地址栏中输入如下格式的url地址:ftp://[用户名:口令@]ftp服务器域名[:端口号]

     

      (在CMD命令行下也可以用上述方法连接,通过put命令和get命令达到上传和下载的目的,通过ls命令列出目录,除了上述方法外还可以在cmd下输入ftp回车,然后输入open IP来建立一个连接,此方法还适用于linux下连接ftp服务器)

     

      通过ie浏览器启动ftp的方法尽管可以使用,但是速度较慢,还会将密码暴露在ie浏览器中而不安全。因此一般都安装并运行专门的ftp客户程序。

     

      1.在本地电脑上登陆到国际互联网.

     

      2.搜索有文件共享主机或者个人电脑(一般有专门的FTP服务器网站上公布的,上面有进入该主机或个人电脑的名称,口令和路径).

     

      3.当与远程主机或者对方的个人电脑建立连接后,用对方提供的用户名和口令登陆到该主机或对方的个人电脑.

     

      4.在远程主机或对方的个人电脑登陆成功后,就可以上传你想跟别人分享的东西或者下载别人授权共享的东西(这里的东西是指能放到电脑里去又能在显示屏上看到的东西).

     

      5.完成工作后关闭FTP下载软件,切断连接.

     

      为了实现文件传输,用户还要运行专门的文件传输程序,比如网际快车就有这方面的功能,其它还有很多专门的FTP传输软件,FlashFxp为其中的杰出软件。有兴趣的网友可以试试其他的软件,如LeapFTP总归各有各的特色.

    FTP协议

      TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。FTP协议的任务是从一台计算机将文件传送到另一台计算机,它与这两台计算机所处的位置、联接的方式、甚至是是否使用相同的操作系统无关。假设两台计算机通过ftp协议对话,并且能访问Internet, 你可以用ftp命令来传输文件。每种操作系统使用上有某一些细微差别,但是每种协议基本的命令结构是相同的。

     

      FTP的传输有两种方式:ASCII传输模式和二进制数据传输模式。

     

      1.ASCII传输方式:假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。

     

      但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。在拷贝任何非文本文件之前,用binary 命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。

     

      2.二进制传输模式:在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。

     

      如果你在ASCII方式下传输二进制文件,即使不需要也仍会转译。这会使传输稍微变慢 ,也会损坏数据,使文件变得不能用。(在大多数计算机上,ASCII方式一般假设每一字符的第一有效位无意义,因为ASCII字符组合不使用它。如果你传输二进制文件,所有的位都是重要的。)如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。

     

      5. FTP的工作方式

     

      FTP支持两种模式,一种方式叫做Standard (也就是 PORT方式,主动方式),一种是 Passive (也就是PASV,被动方式)。 Standard模式 FTP的客户端发送 PORT 命令到FTP服务器。Passive模式FTP的客户端发送 PASV命令到 FTP Server。

     

      下面介绍一个这两种方式的工作原理:

     

      Port模式FTP 客户端首先和FTP服务器的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。

     

      Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到Pasv命令后,随机打开一个临时端口(也叫自由端口,端口号大于1023小于65535)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。

     

      很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。

     

      FTP软件可以更好的帮助你管理FTP目录 提供更系统的工具

     

      FTP工具推荐使用 cuteftp

     

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

     

      一个主动模式的FTP连接建立要遵循以下步骤:

     

      客户端打开一个随机的端口(端口号大于1024,在这里,我们称它为x),同时一个FTP进程连接至服务器的21号命令端口。此时,源端口为随机端口x,在客户端,远程端口为21,在服务器。

     

      客户端开始监听端口(x+1),同时向服务器发送一个端口命令(通过服务器的21号命令端口),此命令告诉服务器客户端正在监听的端口号并且已准备好从此端口接收数据。这个端口就是我们所知的数据端口。

     

      服务器打开20号源端口并且建立和客户端数据端口的连接。此时,源端口为20,远程数据端口为(x+1)。

     

      客户端通过本地的数据端口建立一个和服务器20号端口的连接,然后向服务器发送一个应答,告诉服务器它已经建立好了一个连接。

    展开全文
  • FTP 协议

    2020-03-06 02:02:33
    FTP文件传输协议简介 FTP的必要性 在互联网时代,如果您要将文件传输给朋友,您可以将其附加到电子邮件中并将其发送出去。如果您需要立即将文件传输给某人,该怎么办?没有延迟,它必须很快,且你传输的文件可能非常...

    FTP文件传输协议简介

    FTP的必要性

    在互联网时代,如果您要将文件传输给朋友,您可以将其附加到电子邮件中并将其发送出去。如果您需要立即将文件传输给某人,该怎么办?没有延迟,它必须很快,且你传输的文件可能非常大。在这种情况下,电子邮件很可能不够用。这是因为大多数电子邮件提供商限制了服务器上的邮箱大小,您无法上传大型邮件,并且无法保证您在发送电子邮件时收件人接收邮件需要多长时间,或者甚至是到达那里,这就是FTP的用武之地。

    什么是FTP?

    FTP代表文件传输协议,用于在FTP服务器和另一台计算机之间传输文件。在过去,FTP比现在更常见,并且是互联网上主要的文件传输机制。如果您需要在两台计算机之间传输文件,则可以使用FTP执行此操作。

    文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层。其主要作用是在服务器和客户端之间实现文件的传输和共享。

    文件传输协议(FTP)使得主机间可以共享文件。FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。 FTP 使用 TCP 生成一个虚拟连接用于控制命令交互,然后再生成一个单独的 TCP 连接用于数据传输。使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。 (运行在UDP协议上的是TFTP协议)

    然而, 用户并不真正登录到自己想要存取的计算机上面而成为完全用户, 可用FTP程序访问远程资源, 实现用户往返传输文件、目录管理以及访问电子邮件等等,提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。即使双方计算机可能配有不同的操作系统和文件存储方式,但是它不需要进一步处理,就像MIME或Unicode一样。

    FTP的限制

    对于FTP服务器来讲,他必须在整个会话期间保持用户的状态(state),特别是,服务器必须把特定的用户账户与控制联系起来,用户在远程目录树上不断跳转时,服务器必须追踪到用户在远程树上的当前位置,换句话说,当客户端用户数量不断增多,FTP服务器所要维持的会话总数,也会迅速增长。就会大大限制FTP服务器的性能。

    与Http协议区别

    Http和FTP都是文件传输协议,都是运行在tcp上面,但是他们也有一些重要的区别:

    1.FTP使用了两个并行的tcp来传输文件:一个是控制连接(port:21),一个是数据连接(port:20);

    • 控制连接用于在两个主机之间传输控制信息,如口令,用户标识,存放、获取文件等命令。
    • 数据连接用于实际发送一个文件,发送完文件之后数据连接后会关闭。

    因为ftp协议使用一个独立的控制连接,所以,也称ftp的控制信息是带外(out-of-band)传送的。

    2.Http协议是在传输文件的同一个tcp连接中发送请求和相应首部行的。因此,Http也可以说是带内(in-band)发送控制信息。

    FTP协议的组成及怎么连接到FTP服务器

    一.FTP是基于客户机/服务器模式的服务系统,它由客户软件、服务器软件和FTP通信协议3个部分组成。如下所示:

    1. FTP客户机:Web浏览器或FTP客户端(如FileZilla)
    2. FTP通信协议
    3. FTP服务器

    二.FTP中的客户端-服务器模型:

    FTP客户端与服务器之间要建立双重连接,一个是控制连接,一个是数据连接。
    控制连接:NVT ASCII
    数据连接:文件类型、数据结构、传输方式
    在这里插入图片描述
    建立双重连接的原因是:FTP是一个交互式会话系统,某客户每次调用FTP,便与服务器建立一次会话,会话以控制连接来维持。

    客户端每提出一个请求,服务器与客户端建立一个数据连接,进行实际的数据(比如文件)传输,一旦数据传输结束,数据连接相继撤销,但控制连接依然存在,客户端可以继续发出命令。

    客户可以撤销控制连接(close命令),也可以退出FTP会话(quit命令)。

    三.如何连接到FTP服务器?

    连接到FTP服务器有两种方法。首先是让所有人都可以匿名登录,也称为匿名FTP,或者您可以将用户名和密码分配给他们必须用来登录服务器的人。

    • 连接到FTP服务器的两种最常用方法是使用Web浏览器或FTP客户端(如FileZilla)。要使用浏览器连接到FTP服务器,用FTP协议允许的FTP命令对文件操作, 可以使用ftp://协议语句为要连接的主机名添加前缀。例如,ftp://www.simcf.cc。然后它会尝试匿名连接。如果您尝试连接的服务器需要用户名和密码,您需要输入用户名和密码。

    小编以前工作的时候深刻的体会到FTP的便利,公司有两种网络,一个是内网,一个是外网,公司那时候内外网不能同时使用,公司技术部也一直没有解决这个问题,这个问题就一直存在。我记得当时要通过公司内部内网OA系统下载东西到本地,OA系统当时没有关联C盘以外的任何硬盘,而且C盘是没有读写权限的,我当时还不懂怎么操作,所以当时采用了一种最笨的方法,通过内网OA系统发送到任意邮箱,然后切断内网,再登录外网,通过外网登陆邮箱下载东西到本地。有一段时间都是这么过来的,很是憋屈,很累。当时不知道FTP的存在及如何操作。后来我们学计算机专业的部门经理是给我安利了FTP这样一种便利的传输方式,至此以后,必要时候,这个方法方便了许多,给我提供了很多便利。

    • 另一种方法是使用专门设计用于连接FTP服务器的FTP客户端。(如FileZilla)这些类型的软件通常是最好的,因为它们已经简化了速度并支持许多高级功能,如自动恢复。您应该浏览FTP客户端列表并找到您喜欢的。

    小编最近也发现了一个好东西,了解到了一个通过FTP和HTTP协议实现的无限传输神器「FV文件管理」。这个的特别之处就是可以通过FTP和HTTP协议实现电脑与手机无线传输文档、图片、文件、甚至是一部4K电影,而且传输大小不受限。干净无广告无推送。很好用,里面好多便利大家可以自己详细了解一下,如需要资源,评论里私信我,我会第一时间分享给你。

    FTP协议涉及到的相关术语,服务器怎么实现的,怎么传输的?

    1.服务器如何实现?

    FTP服务器的实现是由一组FTP进程完成的。

    服务器FTP进程:由协议解释器PI和数据传输过程DTP组成。
    客户端FTP进程:由PI、DTP和用户接口组成。

    2.涉及到的相关术语有哪些?

    • PI(protocol interpreter):协议解析器。用户和服务器用其来解析协议,它们的具体实现分别称为用户 PI (USER-PI)和服务器PI(SERVER-PI)。
    • 服务器PI(server-PI):服务器 PI 在 L 端口“监听”用户协议解析器的连接请求并建立控制连接。它从用户 PI接收标准的 FTP 命令,发送响应,并管理服务器 DTP。
    • 服务器DTP(server-DTP):数据传输过程,在通常的“主动”状态下是用“监听”的数据端口建立数据连接。它建立传输和存储参数,并在服务器端 PI 的命令下传输数据。服务器端 DTP 也可以用于“被动”模式,而不是主动在数据端口建立连接。
    • 用户PI(user-PI):用户协议解析器用 U 端口建立到服务器 FTP 过程的控制连接,并在文件传输时管理用户 DTP。
    • 用户DTP(user-DTP):数据传输过程在数据端口“监听”服务器 FTP 过程的连接。

    控制连接:用户PI 与服务器PI 用来交换命令和响应的信息传输通道。
    数据连接:通过控制连接协商的模式和类型进行数据传输。

    3.FTP如何传输?

    文件传输协议(FTP)使得主机间可以共享文件。 FTP 使用 TCP 生成一个虚拟连接用于控制命令交互,然后再生成一个单独的 TCP 连接用于数据传输。

    在这里插入图片描述

    图片中,控制连接由用户PI 发起。首先由用户PI 产生标准FTP 命令通过控制连接传输到服务器过程。标准响应由服务器端PI 通过控制连接发送到用户PI 作为命令的回应。

    FTP 命令指定数据连接参数(端口,传输模式,表示类型,以及结构)和文件系统操作种类(store,retrieve,append,delete 等)。用户DTP 则应在指定的数据端口“监听”,服务器用相应的参数发起数据连接并传送数据。

    用户分类

    • Real帐户
      这类用户是指在FTP服务上拥有帐号。当这类用户登录FTP服务器的时候,其默认的主目录就是其帐号命名的目录。但是,其还可以变更到其他目录中去。如系统的主目录等等。

    • Guest用户
      在FTP服务器中,我们往往会给不同的部门或者某个特定的用户设置一个帐户。但是,这个账户有个特点,就是其只能够访问自己的主目录。服务器通过这种方式来保障FTP服务上其他文件的安全性。这类帐户,在Vsftpd软件中就叫做Guest用户。拥有这类用户的帐户,只能够访问其主目录下的目录,而不得访问主目录以外的文件。

    • Anonymous用户
      这也是我们通常所说的匿名访问。这类用户是指在FTP服务器中没有指定帐户,但是其仍然可以进行匿名访问某些公开的资源。
      在组建FTP服务器的时候,我们就需要根据用户的类型,对用户进行归类。默认情况下,Vsftpd服务器会把建立的所有帐户都归属为Real用户。但是,这往往不符合企业安全的需要。因为这类用户不仅可以访问自己的主目录,而且,还可以访问其他用户的目录。这就给其他用户所在的空间带来一定的安全隐患。所以,企业要根据实际情况,修改用户所在的类别。

    传输方式

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

    • ASCII传输方式

    假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。
    但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件。在拷贝任何非文本文件之前,用binary 命令告诉ftp逐字拷贝。

    • 二进制传输模式

    在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。
    如在ASCII方式下传输二进制文件,即使不需要也仍会转译。这会损坏数据。(ASCII方式一般假设每一字符的第一有效位无意义,因为ASCII字符组合不使用它。如果传输二进制文件,所有的位都是重要的。)

    支持模式

    FTP支持两种模式:Standard (PORT方式,主动方式),Passive (PASV,被动方式)。由于主动模式存在着安全问题,最近几年,大部分的TFP客户端开始默认使用被动模式。

    • Port模式

    主动模式的核心是TFP客户端告诉服务端自己开发那个端口作为数据端口,然后让服务端来连接自己。

    主动模式的连接建立一般是通过一些几个步骤:

    1. 客户端随机打开一个本地大于1024的端口P1
    2. 客户端通过端口P1向服务器控制端口(端口21)发起连接请求
    3. 服务器进行认证成功,请求建立
    4. 客户端对本地端口P2进行监听并向服务器发送“Port P1+1”告诉服务器,客户端的数据监听端口。
    5. 服务器收到端口后,从自己的数据端口(端口20)发起连接,连接到客户端指定的数据端口P1+1.
    • Passive模式

    由于主动方式中,服务端需要主动连客户端,对于客户端的防火墙来说,属于外部连接内部,会出现被阻塞的情况。被动方式解决了这个问题。被动连接的核心是控制连接请求和数据连接请求都是由客户端发起。被动方式的步骤如下:

    1. 客户端任意打开大约1024的两个本地端口(P1和P1+1)
    2. P1端口发送请求连接服务器的21端口(控制连接端口)同时提交PASV命令。
    3. 服务器收到请求后,会开启任意一个大约1024的端口P2,然后返回如下格式内容: 227 entering passive mode(h1,h2,h3,h4,p1,p2)
    4. 客户端收到服务端返回的内容后,计算出服务端开放的数据连接端口
    5. 客户端通过P1+1端口向服务端的发送连接请求。进行数据传输。

    关于服务端返回的报文格式(h1,h2,h3,h4,p1,p2)具体含义如下:

    • h1,h2,h3,h4代表服务器的ip地址;
    • p1,p2代表服务器监听的数据连接端口地址。计算方法为P1*256+P2

    数据结构和传输方式

    数据结构:

    1.文件结构(File Structure)字节流,无结构;

    2.记录结构(Record Structure)文件被划分为记录,用于文本文件;

    3.页结构(Page Structure)文件被划分为页,每页有页号和页头。可以进行随机存取或顺序存取。

    传输方式:

    FTP的传输模式有流模式、块模式和压缩模式;

    1.流模式:数据以字节流的形式传送

    -记录结构

    -文件结构

    2.块模式:文件以块的形式传送,块带有自己的头部分。头字节包括16位计数域和8位描述子代码

    3.压缩模式:压缩模式中,因为数据是压缩过的,对于增加带宽有很多好处。

    块模式头字节的结构:

    8位描述子代码 16为字节计数

    描述子代码在描述子字节中的位标记说明:

    代码 意义
    128 数据块结束是由于记录结束(EOR)(此数据块文件具有记录结构)
    64 数据块结束是由于文件结束(EOF)
    32 数据块内有怀疑错误
    16 数据块是重新开始标记

    命令和应答

    简介
    1.FTP服务器的登陆
    匿名用户:FTP 口令:FTP
    用户:ANONYMOUS 口令:任何电子邮件
    2.显示文件信息:DIR/LS
    3.下载文件:GET 文件名(下载到当前目录)
    4.上传文件:PUT 文件名
    5.多文件下载:MGET
    6.多文件上传:MPUT
    7.退出:BYE
    8.帮助:HELP

    用途
    在本地主机和远程主机之间传送文件。

    语法
    ftp [ -d] [ -g ] [ -i ] [ -n ] [ -v] [ -f ] [ -k realm] [-q[-C]][ HostName [ Port ] ]

    语法描述:
    -C:允许用户指定:通过 send_file 命令发出的文件必须在网络高速缓冲区(NBC)中经过缓存处理。此标志必须在指定了-q 标志的情况下使用。只有当文件在无保护的情况下以二进制方式发送时此标志才适用。
    -d:将有关 ftp 命令操作的调试信息发送给 syslogd 守护进程。如果您指定-d 标志,您必须编辑/etc/syslog.conf 文件并添加下列中的一项:
    OR
    user.debug FileName
    请注意: syslogd 守护进程调试级别包含信息级别消息。
    如果不编辑/etc/syslog.conf 文件,则不会产生消息。变更了/etc/syslog.conf 文件之后,请运行 refresh -s syslogd 或 kill -1 SyslogdPID 命令,以通知 syslogd 守护进程其配置文件的变更。关于调试级别的更多信息,请参考/etc/syslog.conf 文件。也请参考 debug 子命令。
    -g:禁用文件名中的元字符拓展。解释元字符可参考为扩展(有时叫做文件名匹配替换)文件名。请参考 glob 子命令。
    -i:关闭多文件传送中的交互式提示。请参考 prompt、mget、mput 和 mdelete 子命令,以取得多文件传送中的提示的描述。
    -n:防止在起始连接中的自动登录。否则, ftp 命令会搜索$HOME/.netrc 登录项,该登录项描述了远程主机的登录和初始化过程。请参考 user 子命令。
    -q:允许用户指定: send_file 子例程必须用于在网络上发送文件。只有当文件在无保护的情况下以二进制方式发送时此标志才适用。
    -v:显示远程服务器的全部响应,并提供数据传输的统计信息。当 ftp 命令的输出是到终端(如控制台或显示)时,此显示方式是缺省方式。
    如果 stdin 不是终端,除非用户调用带有-v 标志的 ftp 命令,或发送 verbose 子命令,否则 ftp 详细方式将禁用。
    -f:导致转发凭证。如果Kerberos 5 不是当前认证方法,则此标志将被忽略。
    -k:realm 如果远程站的域不同于本地系统的域,系统将允许用户指定远程站的域。因此,域和DCE 单元是同义的。如果Kerberos 5 不是当前认证方法,则此标志将被忽略。

    FTP命令主要用于控制连接,可以直接采用Telnet协议实现,所以FTP命令同Telnet命令包括中断进程、Telnet的同步信号、查询服务器、带选项的Telnet命令等。
    命令以NVT ASCII码形式传送,要求在每行结尾都要CR、LF对。

    在这里插入图片描述
    在这里插入图片描述
    FTP响应都是ASCII码形式的3位数字,响应也是以NVT ASCII码形式传送,要求在每行结尾都要返回CR、LF对。


    原图作者:Andrewniu

    匿名FTP

    默认状态下,FTP 站点允许匿名访问,FTP 服务器接受对该资源的所有请求,并且不提示用户输入用户名或密码。如果站点中存储有重要的或敏感的信息,只允许授权用户访问,应禁止匿名访问。

    使用FTP时必须首先登录,在远程主机上获得相应的权限以后,方可下载或上传文件。也就是说,要想同哪一台计算机传送文件,就必须具有哪一台计算机的适当授权。换言之,除非有用户ID和口令,否则便无法传送文件。这种情况违背了Internet的开放性,Internet上的FTP主机何止千万,不可能要求每个用户在每一台主机上都拥有帐号。匿名FTP就是为解决这个问题而产生的。

    匿名FTP是这样一种机制,用户可通过它连接到远程主机上,并从其下载文件,而无需成为其注册用户。系统管理员建立了一个特殊的用户ID,名为anonymous, Internet上的任何人在任何地方都可使用该用户ID。

    通过FTP程序连接匿名FTP主机的方式同连接普通FTP主机的方式差不多,只是在要求提供用户标识ID时必须输入anonymous,该用户ID的口令可以是任意的字符串。习惯上,用自己的E-mail地址作为口令,使系统维护程序能够记录下来谁在存取这些文件。

    值得注意的是,匿名FTP不适用于所有Internet主机,它只适用于那些提供了这项服务的主机。

    当远程主机提供匿名FTP服务时,会指定某些目录向公众开放,允许匿名存取。系统中的其余目录则处于隐匿状态。作为一种安全措施,大多数匿名FTP主机都允许用户从其下载文件,而不允许用户向其上传文件,也就是说,用户可将匿名FTP主机上的所有文件全部拷贝到自己的机器上,但不能将自己机器上的任何一个文件拷贝至匿名FTP主机上。即使有些匿名FTP主机确实允许用户上传文件,用户也只能将文件上传至某一指定上传目录中。随后,系统管理员会去检查这些文件,他会将这些文件移至另一个公共下载目录中,供其他用户下载,利用这种方式,远程主机的用户得到了保护,避免了有人上传有问题的文件,如带病毒的文件。

    几个注意的点

    • FTP提供交互式的访问

    允许客户指明文件的类型和格式,并允许文件有存取权限

    功能:
    提供不同种类主机系统之间的文件传输能力
    以用户权限管理的方式提供用户对远程FTP服务器上的管理能力
    以匿名FTP的方式提供公用文件共享的能力

    主进程:负责接受新的请求
    从属进程:负责处理单个请求

    • 工作步骤
    1. 打开熟知端口21,使客户进程能连接上
    2. 待客户进程发送连接请求
    3. 启动从属进程来处理客户进程发来的请求,主进程与从属进程并发执行,从属进程处理完毕后就关闭
    4. 回到等待状态,继续接收其他客户进程的请求

    控制连接端口21,数据连接端口20

    • 控制连接

    FTP客户发出传送请求,通过控制连接发送到服务器的控制进程。
    控制连接并不用来传送文件,在传输文件时还可以使用控制连接,因此控制连接在整个会话期间一直保持打开状态。

    • 数据连接

    服务器端的控制进程收到文件传输请求后创建数据传输进程和数据连接。
    数据连接:连接客户端和服务器端的数据传送进程
    数据传输进程:完成文件的传输,传送完毕后关闭数据传送连接,并结束运行

    • 若需要修改服务器上的文件

    先将此文件传送到本地主机,然后再将修改后的文件副本传送到原服务器

    FTP协议抓包分析

    FTP协议分析1:

    在这里插入图片描述

    1-3号包是tcp三次握手,建立连接,可见ftp是基于tcp的

    4号包,服务器向客户端发送自己的相关信息,后面的状态码220表示服务准备就绪
    在这里插入图片描述

    5号包应该是编码相关内容,具体不知
    6-13号包,登录,8号包发送输入的用户名:ftp,11号包向服务端发送输入的密码:111111(明文传输->不安全),12号包提示,登录成功(状态码230表示登录成功)
    14-16号包,期间去百度ftp相关知识,没有操作,可以看到大约两分钟后(13-14时间差),服务器提示超时,主动关闭了连接(状态码421表示服务关闭)
    17-18号包,因为当时不知道ftp服务器会超时关闭连接,继续操作时提示连接已经关闭,看了数据包才知道(14-16),服务器已经关闭了连接,17-18是我刚才尝试继续操作的时候,被服务器拒绝(客户端没有自动提示连接超时关闭,当超时后再操作才提示连接已关闭,具体提示内容没有截图)

    FTP协议分析2:

    (本次操作是登录后下载了IcY.asp文件,执行命令get IcY.ASP,顺便测试一下windows是不区分大小写的)

    在这里插入图片描述

    1-13号包是登录过程,上面已经解释过了
    下面主要解释ftp文件下载过程:get IcY.ASP(服务器上文件名是IcY.asp)
    14号包:我想从Ip = 169.254.69.245(就是客户端自己的地址) 端口:59*256+77=15181连接你的数据端口(256是约定好的常数) 使用PORT 主动模式(对服务器来说 :意思就是让服务器主动来连接客户端,从下面分析可以看到)
    15号包,服务器同意
    16号包:我想下载IcY.ASP文件(服务器上该文件的命名是IcY.asp)
    17号包:给你传了(这里过滤包时不要直接追踪1-17号包的TCP流,因为ftp的控制连接和数据连接是两个不同的TCP连接,如果直接追踪,看不到数据连接,也就是看不到数据传输的过程)

    18-20号包:TCP连接三次握手,可以看到ftp为数据传输又开辟了一个TCP连接(数据连接),服务器端口是20,常说的ftp21端口是ftp的控制连接(1-17号包)

    在这里插入图片描述
    21-161是传输IcY.asp文件的过程
    可见,服务器每发两个包,客户端ack一次
    162-165:数据连接关闭,文件传输完成(注意只是关闭了数据连接)
    166-168:服务器通过控制连接告诉客户端,我传完了
    169-170:此时我输入了quit命令,退出ftp客户端
    171-174:四次挥手,断开控制 连接,至此,ftp连接完全关闭(控制连接+数据连接)

    文件下载后的名是IcY.ASP (是按照我请求的文件名,而不是服务器中的文件名IcY.asp)

    注:其实小编的部分原创文章,并不是真正意义上的原创,小编是跟据自己的理解,然后把自己理解的,想告诉各位的一些 关键点,选择性的摘抄,有效整合到一起的,有好多雷同地方,如后期原创大大看到,希望理解。大家的初衷都是资源共享,共赢,所以就当我是您的搬运工,求放过。所以不忘初心,您这神手可得好好招摇。至于原创作者,我就不一一例举了。

    展开全文
  • ftp协议详解ftp协议详解ftp协议详解ftp协议详解ftp协议详解ftp协议详解ftp协议详解ftp协议详解ftp协议详解
  • FTP协议

    千次阅读 2006-08-24 13:20:00
    文件传输协议FTP)使得主机间可以共享文件。 FTP 使用 TCP 生成一个虚拟连接用于控制信息,然后再生成一个单独的 TCP 连接用于数据传输。控制连接使用类似 TELNET 协议在主机间交换命令和消息。 FTP 的主要功能...

    文件传输协议(FTP)使得主机间可以共享文件。 FTP 使用 TCP 生成一个虚拟连接用于控制信息,然后再生成一个单独的 TCP 连接用于数据传输。控制连接使用类似 TELNET 协议在主机间交换命令和消息。

     

      FTP 的主要功能如下:

    • 提供文件的共享(计算机程序 / 数据);

       

    • 支持间接使用远程计算机;

       

    • 使用户不因各类主机文件存储器系统的差异而受影响;

       

    • 可靠且有效的传输数据。

       

      FTP ,尽管可以直接被终端用户使用,但其应用主要还是通过程序实现。   FTP 控制帧即指 TELNET 交换信息,包含 TELNET 命令和选项。然而,大多数 FTP 控制帧是简单的 ASCII 文本,可以分为 FTP 命令或 FTP 消息。 FTP 消息是对 FTP 命令的响应,它由带有解释文本的应答代码构成。  

     

     

    协议结构

     

     

    命令

     

    描述

     

    ABOR

     

    中断数据连接程序

     

    ACCT

     

    系统特权帐号

     

    ALLO

     

    为服务器上的文件存储器分配字节

     

    APPE

     

    添加文件到服务器同名文件

     

    CDUP

     

     

    改变服务器上的父目录

     

    CWD

     

     

    改变服务器上的工作目录

     

    DELE

     

    删除服务器上的指定文件

     

    HELP

     

    返回指定命令信息

     

    LIST

     

    如果是文件名列出文件信息,如果是目录则列出文件列表

     

    MODE

     

    传输模式(S=流模式,B=块模式,C=压缩模式)

     

    MKD

     

    在服务器上建立指定目录

     

    NLST

     

    列出指定目录内容

     

    NOOP

     

    无动作,除了来自服务器上的承认

     

    PASS

     

    系统登录密码

     

    PASV

     

    请求服务器等待数据连接

     

    PORT

     

     

    IP 地址和两字节的端口 ID

     

    PWD

     

    显示当前工作目录

     

    QUIT

     

    FTP 服务器上退出登录

     

    REIN

     

    重新初始化登录状态连接

     

    REST

     

    由特定偏移量重启文件传递

     

    RETR

     

    从服务器上找回(复制)文件

     

    RMD

     

    在服务器上删除指定目录

     

    RNFR

     

    对旧路径重命名

     

    RNTO

     

    对新路径重命名

     

    SITE

     

    由服务器提供的站点特殊参数

     

    SMNT

     

    挂载指定文件结构

     

    STAT

     

    在当前程序或目录上返回信息

     

    STOR

     

    储存(复制)文件到服务器上

     

    STOU

     

    储存文件到服务器名称上

     

    STRU

     

    数据结构(F=文件,R=记录,P=页面)

     

    SYST

     

    返回服务器使用的操作系统

     

    TYPE

     

    数据类型(A=ASCIIE=EBCDICI=binary

     

    USER >

     

    系统登录的用户名

     

     

    标准 FTP 信息如下:

     

     

    响应代码

     

    解释说明

     

    110

     

    新文件指示器上的重启标记

     

    120

     

    服务器准备就绪的时间(分钟数)

     

    125

     

    打开数据连接,开始传输

     

    150

     

    打开连接

     

    200

     

    成功

     

    202

     

    命令没有执行

     

    211

     

    系统状态回复

     

    212

     

    目录状态回复

     

    213

     

    文件状态回复

     

    214

     

    帮助信息回复

     

    215

     

    系统类型回复

     

    220

     

    服务就绪

     

    221

     

    退出网络

     

    225

     

    打开数据连接

     

    226

     

    结束数据连接

     

    227

     

    进入被动模式(IP 地址、ID 端口)

     

    230

     

    登录因特网

     

    250

     

    文件行为完成

     

    257

     

    路径名建立

     

    331

     

    要求密码

     

    332

     

    要求帐号

     

    350

     

    文件行为暂停

     

    421

     

    服务关闭

     

    425

     

    无法打开数据连接

     

    426

     

    结束连接

     

    450

     

    文件不可用

     

    451

     

    遇到本地错误

     

    452

     

    磁盘空间不足

     

    500

     

    无效命令

     

    501

     

    错误参数

     

    502

     

    命令没有执行

     

    503

     

    错误指令序列

     

    504

     

    无效命令参数

     

    530

     

    未登录网络

     

    532

     

    存储文件需要帐号

     

    550

     

    文件不可用

     

    551

     

    不知道的页类型

     

    552

     

    超过存储分配

     

    553

     

    文件名不允许

     

     

    相关协议

     

    TELNET

     

    组织来源

     

    FTP IETFhttp://www.ietf.org)在 RFC 959 中,并由22282640 2773 重新更新。

     

     

     

     

     

     

     

     

     

     

     

    展开全文
  • 网络协议之FTP协议

    千次阅读 2020-05-10 20:42:45
    1、什么是FTP协议? FTP 是File Transfer Protocol(文件传输协议)。用于ftp客户端和ftp服务器之间进行文本、文件传输的协议。与http的短连接不同,FTP协议是一种基于socket的长连接。 2、FTP协议的原理 FTP协议...
  • FTP协议讲解

    万次阅读 多人点赞 2018-08-14 10:46:45
    文件传输协议FTP)作为网络共享文件的传输协议,在网络应用软件中具有广泛的应用。FTP的目标是提高文件的共享性和可靠高效地传送数据。 在传输文件时,FTP 客户端程序先与服务器建立连接,然后向服务器发送命令。...
  • FTP协议简介

    千次阅读 2020-01-05 14:50:07
    1. FTP协议概述 FTP协议的英文全称为File Transfer Protocol, 简称为FTP, 它是从一个主机向一个主机传输文件的协议。 FTP协议中客户端和服务器进行文件交互的方式如下图1所示,FTP客户端包含两部分:用户接口和...
  • 6.3 FTP协议

    2020-05-02 22:00:24
    文章目录1.FTP协议的功能2.FTP工作原理控制连接和数据连接 1.FTP协议的功能 文件传输协议( File Transfer Protocol, FTP)是因特网上使用得最广泛的文件传输协议。 FTP提供交互式的访问,允许客户指明文件的类型与...
  • FTP协议 与 FXP协议区别

    千次阅读 2019-10-28 10:43:33
    FTP协议 与 FXP协议区别: 一、FTP是什么? FTP(File Transfer Protocol,文件传输协议), 是 TCP/IP 协议组中的协议之一。 FTP协议包括两个组成部分,其一为FTP客户端,其二为FTP服务器。其中FTP服务器用来存储...
  • FTP协议详解“关于FTP协议,比课本再多了解一些”// - 简介 - ◆ ◆ ◆◆ FTP(File Transfer Protocol)是应用层的一个文件传输协议。其主要作用是在服务器和客户端之间实现文件的传输和共享。FTP协议运行在TCP连接上...
  • FTP协议是一种用于什么的协议

    万次阅读 2020-05-16 07:29:17
    FTP协议是一种用于什么的协议 FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。复FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。 其中FTP服务器用来存储文件,用户...
  • FTP协议详解

    2018-04-10 15:33:13
    FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web...
  • 本文链接:... FTP协议的C语言实现 https://blog.csdn.net/Zhu_Zhu_2009/article/details/82147473 一、FTP协议简介 FTP 是File Transfer Protocol(文件传输协议)的英文简称...
  • FTP协议分析

    万次阅读 2016-04-08 12:06:14
    FTP协议分析二、实验目标 1、理解FTP协议的工作原理; 2、了解FTP协议的常用命令; 3、了解应用层协议与传输层协议的关系三、实验原理 FTP(File Transfer Protocal),是文件传输协议的简称。FTP使得主机...
  • 文件传输协议FTP)作为网络共享文件的传输协议,在网络应用软件中具有广泛的应用。FTP的目标是提高文件的共享性和可靠高效地传送数据。 在传输文件时,FTP 客户端程序先与服务器建立连接,然后向服务器发送命令。...
  • 前言一、什么是FTP协议?二、FTP有服务器和客户端,各自有什么作用?三、FTP的端口号是什么?四、FTP常用的状态码?五、HTTP和FTP的区别? 一、什么是FTP协议? FTP(File Transfer Protocol,文件传输协议) 是 ...
  • java代码实现FTP协议

    千次阅读 2020-02-29 17:44:05
    前几节我们完成了ftp协议的主要讲解,同时使用wireshark抓包了解ftp数据协议包的特征,本节我们使用代码完成ftp协议,代码将模仿ftp客户端,它与服务器建立连接后,使用用户名和密码登陆服务器,然后获得服务器的...
  • ftp协议及常用命令

    2020-01-14 13:57:17
    FTP协议 FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP...
  • 本文详细介绍了FTP协议内容及FTP工作原理以及基于FTP协议通过C#实现FTP客户端和FTP服务端。 1 FTP协议 文件传输协议FTP(File Transfer Protocol)是因特网中使用最广泛的文件传输协议。FTP使...
  • HTTP协议与FTP协议的区别

    千次阅读 2018-04-14 16:56:58
    项目中应用到ftp,将ftp的笔记上传一下。简单的说:HTTP是Hyper Text Transfer Protocol,超文本传输...面向网页的。FTP是File Transfer Protocol,文件传输协议;面向文件的。...相比于HTTP,FTP协议要复杂得多。复杂...
  • 通俗易懂说协议:FTP协议和TFTP协议的区别TFTP 和 FTP 区别1. 定义2. 功能参考 TFTP 和 FTP 区别 1. 定义 FTP:文件传输协议, 传输文件的协议;不仅仅是一个协议,它同时也是一个程序 TFTP: 简单文件传输协议,是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,173
精华内容 11,269
关键字:

ftp协议