文档库 最新最全的文档下载
当前位置:文档库 › FTP协议的命令command与返回码

FTP协议的命令command与返回码

FTP协议的命令command 与返回码resultcode 详解

2010-07-09 10:28

Ftp协议:RFC959

(注意是RFC!不是RPC... 不知道RPC谁发明的。。。⊙﹏⊙b汗那帮不负责任的转帖者,以谬传谬)

可以参考https://www.wendangku.net/doc/b318676771.html,/rfcs/rfc959.html

命令和返回码:

C-->S:命令

S-->C:返回码

每一个Ftp发送之后,Ftp服务器都会返回一个字符串,其中包括一个返回代码和一串说明信息。这个返回码主要是用于判断命令是否被成功执行了。除此之外,还有一个非常重要的命令的返回。当发送PASV之后,返回“227 Entering Passive Mode (127,0,0,1,4,18)”。这意味着在服务器上有一个端口被开放,他将为我们后面接着的数据传输作好准备,但是我们如何知道该端口号呢,就在(127,0,0,1,4,18)中,前面四位指服务器的地址,关键是最后两位,将最后第二位乘256再加上最后一位的值就是我们的端口号,也就是 4*256+18。取得端口号之后我们就可以用socket连接到这里。这为我们后面的工作作好准备了,因为我们的取得列表,上传,下载文件都要依靠它来实现。

一个非典型的ftp交互实例:

Response: 220 Gene6 FTP Server v3.10.0 (Build 2) ready...

Request: USER anonymous

Response: 331 Password required for anonymous.

Request: PASS https://www.wendangku.net/doc/b318676771.html,

Response: 230 User anonymous logged in.

Request: CWD board

Response: 250 CWD command successful. "/board" is current directory. Request: TYPE I

Response: 200 Type set to I.

Request: SIZE 4saac062.zip

Response: 213 248288

Request: RETR 4saac062.zip

Response: 150 Data connection accepted from x.x.x.x:2841; transfer starting for /board/4saac062.zip (248288 bytes)

FTP命令:

灰色的命令一般很少使用,所以往往在具体实现中不被支持,所以可能返回的信息是“500 'xx': command not understood”。

ftp网络命令

件。可以交互使用。这里要注意,只有安装了tcp/ip协议的机器才能使用ftp命令。 命令格式: ftp [-v][-d][-i][-n][-g][-s: filename][-a][-w: -v不显示远程服务器响应 -n禁止第一次连接的时候自动登陆 -i在多个文件传输期间关闭交互提示 -d允许调试、显示客户机和服务器之间传递的全部ftp命令 -g不允许使用文件名通配符,文件名通配符的意思是说允许在本地文件以及路径名中使用通配字符 -s: filename指定包含ftp命令的文本文件。在ftp命令启动后将自动运行这些命令。在加的参数里不能有空格。 -a绑定数据连接时,使用任何的本地端口 -w: windowsize忽略默认的4096传输缓冲区 呵呵,理解了上面的,就说说一些具体的命令,我个人觉得虽然现在工具用起来很方便了,但懂这些命令在很多地方还是很有用的,就像现在nt下的命令提示符1)? 说明:

显示ftp命令的说明。后面可以加参数,是加需要解释的命令名,不加则显示包含所有命令列表。 2)append 说明: 使用当前文件类型设置,将本地文件附加到远程计算机中。大概格式是append local-file [remote-file]其中local-file是说指定要添加的本地文件。 remote-file是说指定要将local-file附加到远程计算机文件,要是省了这个,则是使用3)ascii 说明: 默认情况下,将文件传输类型设置为ASCII 4)bell 说明: 响玲开关,意思是文件传输完成后是否有玲声提醒。默认是关闭的。 5)binary 说明: 将文件传输类型设置为二进制。 6)bye 说明: 结束和远程计算机的ftp会话,也就是安全断开,退出ftp. 7)cd 说明:

计算机网络实验-HTTP、FTP协议分析

实验二HTTP、FTP协议分析 1. 本次实验包括HTTP、FTP两个协议的分析(详见一、二)。 2. 参考文档所述步骤,完成数据包的捕获并进行分析; 3. 认真撰写实验报告,叙述实验过程要层次分明,对关键的过程或结果截图说明、分析,回答实验文档所提的思考题、问题。 一、超文本传输协议(HTTP)分析 【实验目的】 掌握HTTP协议的原理和报文格式; 了解HTTP协议的工作过程; 了解应用层协议与传输层协议的关系。 【实验内容】 用浏览器打开网页,捕获HTTP报文并进行分析 编辑一个HTTP数据报文并进行发送,并捕获该报文进行分析。 【实验步骤】 步骤一:使用浏览器打开网页,捕获HTTP数据包并分析: (1) 在主机上打开协议分析仪,点击工具栏上的“过滤器”,“类型过滤器”的下拉列表中 选择“HTTP协议”,确定后开始进行数据捕获:

(2) 使用实验室主机上的浏览器,例如IE,打开一个网页,如URL是 HTTP//https://www.wendangku.net/doc/b318676771.html, (3) 在协议分析器中找到捕获的数据包,观察HTTP请求报文和响应报文,以及其中所使用的命令:

【思考问题】 结合实验过程中的实验结果,问答下列问题: 1. 当实验主机上同时打开多个浏览器窗口并访问同一WEB站点的不同页面时,系统是根据什么把返回的页面正确地显示到相应窗口的?一个主页是否只有一个连接? 2. 请求主页后,返回的浏览器内容的字节长度是多少? 3. 如果请求一个不存在的网页,服务器将会应答什么? 答: 1. 当实验主机上同时打开多个浏览器窗口并访问同一WEB站点的不同页面时,系统是根据地址信息把返回的页面正确地显示到相应窗口的,一个主页是只有一个连接。 2. 请求主页后,返回的浏览器内容的字节长度是 3. 如果请求一个不存在的网页,服务器将会应答404错误。 二、FTP协议分析 【实验目的】 1、掌握FTP协议的工作原理; 2、了解FTP协议的常用命令,并领会其链路管理、理解FTP的主动模式和被动模式 3、了解应用层协议与传输层协议的关系; 【实验内容】 1. 登录FTP服务器,并捕获FTP报文进行分析;

IBM服务器的FTP命令大全

如果你经常要用FTP下载东东的话可一定要把这些让人头晕的命令参数记着。哎。如果能熟悉并灵活应用FTP的内部命令的话,那可真是事半功倍。。。 ****************************************** FTP的命令行格式为: ftp -v -d -i -n -g [主机名] ,其中 -v 显示远程服务器的所有响应信息; -n 限制ftp的自动登录,即不使用;.n etrc文件; -d 使用调试方式; -g 取消全局文件名。 FTP使用的内部命令如下(中括号表示可选项): 1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如:!ls*.zip 2.$ macro-ame[args]:执行宏定义macro-name。 3.account[password]:提供登录远程系统成功后访问系统资源所需的补充口令。 4.append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。 5.ascii:使用ascii类型传输方式。 6.bell:每个命令执行完毕后计算机响铃一次。 7.bin:使用二进制文件传输方式。 8.bye:退出ftp会话过程。 9.case:在使用mget时,将远程主机文件名中的大写转为小写字母。 10.cd remote-dir:进入远程主机目录。 11.cdup:进入远程主机目录的父目录。 12.chmod mode file-name:将远程主机文件file-name的存取方式设置为mode,如:chmod 777 a.out。 13.close:中断与远程服务器的ftp会话(与open对应)。 14.cr:使用asscii方式传输文件时,将回车换行转换为回行。

FTP命令

FTP命令详解: FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX 操作系统下使用FTP,都会遇到大量的FTP内部命令。熟悉并灵活应用FTP的内部命令,可以大大方便使用者,并收到事半功倍之效。 FTP的命令行格式为:ftp -v -d -i -n -g [主机名],其中 -v显示远程服务器的所有响应信息; -n限制ftp的自动登录,即不使用; .n etrc文件; -d使用调试方式; -g取消全局文件名。 ftp使用的内部命令如下(中括号表示可选项): 1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如:!ls*.zip. 2.$ macro-ame[args]:执行宏定义macro-name. 3.account[password]:提供登录远程系统成功后访问系统资源所需的补充口令。 4.append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。 5.ascii:使用ascii类型传输方式。 6.bell:每个命令执行完毕后计算机响铃一次。 7.bin:使用二进制文件传输方式。 8.bye:退出ftp会话过程。 9.case:在使用mget时,将远程主机文件名中的大写转为小写字母。 10.cd remote-dir:进入远程主机目录。

11.cdup:进入远程主机目录的父目录。 12.chmod mode file-name:将远程主机文件file-name的存取方式设置为mode,如:chmod 777 a.out。 13.close:中断与远程服务器的ftp会话(与open对应)。 14.cr:使用asscii方式传输文件时,将回车换行转换为回行。 15.delete remote-file:删除远程主机文件。 16.debug[debug-value]:设置调试方式,显示发送至远程主机的每条命令,如:deb up 3,若设为0,表示取消debug。 17.dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件local-file。 18.disconnection:同close。 19.form format:将文件传输方式设置为format,缺省为file方式。 20.get remote-file[local-file]:将远程主机的文件remote-file传至本地硬盘的local-file。 21.glob:设置mdelete,mget,mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。 22.hash:每传输1024字节,显示一个hash符号(#)。 23.help[cmd]:显示ftp内部命令cmd的帮助信息,如:help get。 24.idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。 25.image:设置二进制传输方式(同binary)。 26.lcd[dir]:将本地工作目录切换至dir。 27.ls[remote-dir][local-file]:显示远程目录remote-dir,并存入本地文件local-file。 28.macdef macro-name:定义一个宏,遇到macdef下的空行时,宏定义结束。 29.mdelete[remote-file]:删除远程主机文件。

FTP协议分析报告

工程类实验报告 系:网络工程专业:网络工程年级: 2009 姓名:学号:实验课程:网络协议分析 实验室号:____田C510__ 实验设备号:实验时间: 12.26 指导教师签字:成绩: 实验四 FTP 协议分析实验 一、实验目的和要求 学习 Serv-U FTP Server 服务软件的基本配置和 FTP 客户端命令的使用,分析FTP 报文格式和 FTP 协议的工作过程。 二、实验原理 FTP 是文件传输协议(File Transfer Protocol)的简称。 FTP 基于 TCP 协议,它通过两个 TCP 连接来传输一个文件,一个是控制连接,另一个 是数据连接。相应的,在进行文件传输时,FTP 需要两个端口,分别用于控制连接端口(用 于给服务器发送指令以及等待服务器响应)和数据传输端口(在客户机和服务器之间发送 一个文件或目录列表)。 两种连接的建立都要经过一个“三次握手”的过程,同样,连接释放也要采用“四次 握手”方法。控制连接在整个回话期间一直保持打开状态。数据连接是临时建立的,在文件 传送结束后被关闭。 FTP 的连接模式有两种,PORT 和 PASV。PORT 模式是一个主动模式,PASV 是被动模式, 这里都是相对于服务器而言的。 当 FTP 客户以 PORT 模式连接服务器时,它首先动态地选择一个端口号连接服务器 的 21 端口,注意这个端口号一定是 1024 以上的,因为 1024 以前的端口都已经预先被定 义好,被一些典型的服务使用或保留给以后会用到这些端口的资源服务。经过 TCP 的三次 握手后,控制连接被建立。这时客户就可以利用这个连接向服务器发送指令和等待服务器响 应了。当需要从(或向)服务器传送数据时,客户会发出 PORT 指令告诉服务器用自己的 那个端口来建立一条数据连接(这个命令由控制连接发送给服务器),当服务器接到这一指 令时,会使用 20 端口连接客户指定的端口号,用以数据传送。 当FTP 客户以 PASV 模式连接服务器时,控制连接的建立过程与 PORT 模式相同,不 同的是,在数据传送时,客户不向服务器发送 PORT 指令而是发送 PASV 指令,服务器收 到 PASV命令后选择一个端口号发送给客户,客户选择一个本地端口号与服务器发送过来的 端口建立一条数据连接。 微软自带的 FTP 客户端命令工具不支持 PASV 模式。 三、实验设备与环境 实验设备和连接图如图 6-5 所示,一台锐捷 S2126G 交换机连接了 2 台 PC 机,分别命名为

通信协议之FTP协议ftp协议详解

通信协议之 FTP 协议完全详解
?
1. 介绍 FTP 的目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对 用户透明和可靠高效地传送数据。虽然我们也可以手工使用它,但是它的主要 作用是供程序使用的。在阅读本文之前最好能够阅读 TCP 协议标准规范和 Tel net 协议标准规范。 2. 概览 在本节中我们将讨论一些表面上的问题,有些名词的定义请参阅 TCP 和 Telne t 参考文献。我们先介绍一下(1)字节大小,在 FTP 中字节大小有两个:逻辑 字节大小和用于传输的字节大小。后者通常是 8 位,而前者可不一定是多少 了。传输字节不必等于逻辑字节大小,也不必对数据结构进行解释。(2)控 制连接是建立在 USER-PIT 和 SERVER-PI 之间用于交换命令与应答的通信链 路。(3)数据连接是传输数据的全双工连接。传输数据可以发生在服务器 DT P 和用户 DTP 之间也可以发生在两个服务器 DTP 之间。(4)DTP:数据传输 过程(DTP)建立和管理数据连接,DTP 可以是主动的也可以是被动的。 (5)EOR 代表记录尾。(6)NTV 代表网络虚拟终端,它的定义与在 Telnet 协议中的定义一致。(7)NVFS 代表网络虚拟文件系统。(8)FTP 可以传输 非连续的文件,这些文件的一部分称为页。(9)PI 代表协议解释器。(10) 服务器 DTP 代表一种传输过程,它通常处于“主动”状态,它和侦听端口建立数 据连接,它还可以为传输和存储设置参数,并根据 PI 的指令传输数据。当然, DTP 也可以转入“被动”状态。(11)服务器 FTP 进程,它是和用户 FTP 进程 一起工作的,它由 PI 和 DTP 组成。至于用户 FTP 进程则是由 PI,DTP 和用

cmd ftp操作指令

DOS登陆FTP的方法 大家可能都比较喜欢用FTP下载东东,一般都直接用下载软件,如现在比较流行的有cuteftp,flashfxp 等,都比较好用,但有没有人想过换一种方式登陆FTP那! 我喜欢用命令行操作,很喜欢DOS(有点守旧,呵呵)。 下面我来详细地介绍一个登陆FTP的命令和步骤吧: 假设FTP地址为“ 61.129.83.39”(大家试验的时候不要以这个FTP去试,应该可能密码要改掉。) 1:“开始”-“运行”-输入“FTP”进去cmd界面 2.open 61.129.8 3.39 如果你的FTP服务器不是用的21默认端口,假如端口是9900,那么此步的命令应在后面空格加9900,即为open 61.129.83.39 9900 3:它会提示输入用户名username 4: 它会提示你输入密码:password 注意密码不显示出来,打完密码后回车即可。如果你的密码输入错误,将不会提示你重新输入,这时你只要键入“user”命令,你就可以重新输入用户名和密码。 5:成功登陆后就可以用dir查看命令查看FTP服务器中的文件及目录,用ls命令只可以查看文件。 6:使用cd 命令转目录,delete删文件,用法跟DOS差不多。呵呵!! 7:lcd d:\dianying 定位本地默认文件夹(本人理解这里的L是local当地英文的缩写,很好理解和记忆)8:下面就是上传和下载文件的命令了,上传用put 文件名.下载用get 文件名 当然下载到当前目录了,就是上面定义的"d:\dianying"(看第七条) 9:最后就退出了 用bye命令。 常用命令: 1. open:与ftp服务器相连接;

Linux的ftp命令大全

Linux ftp 1、登录ftp 代码: lftp 用户名:密码@ftp地址:传送端口(默认21) 用法 (1)lftp username:password@127.0.0.1:21 回车 (2)lftp username@127.0.0.1 回车##默认21端口回车后输入密码 (3)lftp 127.0.0.1 回车##回车后login 登录 (4)lftp 回车--> open 127.0.0.1 --> login 登录 感觉自己很象孔乙己了,茴香豆的"茴"有几种写法阿!~真晕阿~ 2、lftp中文乱码问题 对于像我这样的新手,登录后看到的都是中文乱码(因为一般本地都是utf-8的编码),怎么半呢,用set 命令来解决 set ftp:charset gbk(或者gb2312 或utf-8) ##设置ftp端的编码格式 set file:charset utf-8 (...同上) ##设置本地编码格式 附:set命令的技巧(1)输入set 查看已经设置好的命令(2)set -a 查看所有可以设置的命令 3、查找ftp端文件 ls *.txt ##查找当前目录下的所有txt文件 ls ./123/ ##列出123目录下所有文件 find . -name "*.txt" ##递归查找站点上所有的txt文件 find ./xx -name "*.txt" ##查找xx目录下所有的txt文件 附1: ls第二次读取的是本地缓存,可以用rels 代替ls 或者catch off / catch on 来开关catch,catch flush清空本地catch 附2: 浏览本地目录的命令可用!ls, 如!ls /usr/local/bin/ 4、下载文件 下载文件之前要先设置好本地的目录,用来存放下载的文件 lcd /home/123/web ##设置本地存放目录默认为/home/usr get 123.txt ##下载123.txt文件到/home/123/web 中 get -c 123.txt ##断点续传下载 mget *.txt ##批量下载所有txt文件 mget -c *.txt ##断点续传 mget -c ./123/aaa/*.txt ##断点续传、批量下载ftp端aaa目录下的所有txt文件 pget -c -n 10 file.dat ##以最多10个线程以允许断点续传的方式下载file.dat ##可以通过设置set pget:default-n 5 的值而使用默认值。

FTP命令详解

FTP命令详解 FTP命令详解 -------------------------------------------------------------------------------- FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作系统下使用FTP,都会遇到大量的FTP内部命令。熟悉并灵活应用FTP的内部命令,可以大大方便使用者,并收到事半功倍之效。 FTP的命令行格式为: ftp -v -d -i -n -g [主机名] ,其中 -v 显示远程服务器的所有响应信 息; -n 限制ftp的自动登录,即不使用; .n etrc文件; -d 使用调试方式; -g 取消全局文件名。 ftp使用的内部命令如下(中括号表示可选项): 1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如: !ls*.zip. 2.$ macro-ame[args]:执行宏定义macro-name. 3.account[password]:提供登录远程系统成功后访问系统资源所需的补充口令。 4.append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。 5.ascii:使用ascii类型传输方式。 6.bell:每个命令执行完毕后计算机响铃一次。 7.bin:使用二进制文件传输方式。 8.bye:退出ftp会话过程。 9.case:在使用mget时,将远程主机文件名中的大写转为小写字母。 10.cd remote-dir:进入远程主机目录。

11.cdup:进入远程主机目录的父目录。 12.chmod mode file-name:将远程主机文件file-name的存取方式设置为 mode, 如: chmod 777 a.out 。 13.close:中断与远程服务器的ftp会话(与open对应)。 14.cr:使用asscii方式传输文件时,将回车换行转换为回行。 15.delete remote-file:删除远程主机文件。 16.debug[debug-value]:设置调试方式,显示发送至远程主机的每条命令,如: deb up 3,若设为0,表示取消debug。 17.dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件local-file。 18.disconnection:同close。 19.form format:将文件传输方式设置为format,缺省为file方式。 20.get remote-file[local-file]:将远程主机的文件remote-file传至本地硬盘的local-file。 21.glob:设置mdelete,mget,mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。 22.hash:每传输1024字节,显示一个hash符号(#)。 23.help[cmd]:显示ftp内部命令cmd的帮助信息,如:help get。 24.idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。 25.image:设置二进制传输方式(同binary)。

(精)FTP协议(指令集)

feat命令是用来请求FTP服务器列出它的所有的扩展命令与扩展功能的 FTP协议(指令集) 目录(?)[-] 1. ABOTAbort中止命令 2. ACCTAccount帐号命令 3. ALLOAllocate分配命令 4. APPEAppend with create附加和创建命令 5. CDUPChange to Parent Directory变为父目录命令 6. CWDChange Working Directory改变工作目录命令 7. DELEDelete删除命令 8. HELPHelp帮助命令 9. LISTList列表命令 10. MKDMake Directory 创建目录命令 11. MODETransfer Mode传输模式命令 12. NLSTName List名称列表命令 13. NOOPNOOP无操作命令 14. PASSPassword密码命令 15. PASVPassive被动的命令 16. PORTData Port数据端口命令 17. PWDPrint Working Directory打印工作目录命令 18. QUITLogout注销命令 19. REINReinitialize重新初始化命令 20. RESTRestart重新启动命令 21. RETRRetrieve检索命令 22. RMDRemove Directory删除目录命令 23. RNFRRename From把重命名命令 24. RNTORename TO重命名为命令 25. SITESite Parameters站点参数命令 26. SMNTStructure Mount结构装配命令 27. STATStatus状态命令 28. STORStore保存命令 29. STOUStore Unique存为唯一命令 30. STRUFile Structure文件结构命令 31. SYSTSystem系统命令 32. TYPERepresentation Type表达类型命令 FTP协议采用一系列简单的协议来完成文件传输的各种任务,在发送命令的时候,总是在命令的最后加上一个回车换行符,在VB中可以用“vbcrlf”来实现,vc中以“/r/n”表示。以下的命令是从Postel和Reynolds所著的RFC 929修改而来,如果读者想查看详细内容,可以参见英文版RFC 929。注意以下出现地标志符CRLF表示的是回车符号,即相当于VC中的“/r/n”。 1. ABOT(Abort,中止)命令

网络协议分析(免费下载)概要

实验报告 项目名称:网络协议分析工具的使用课程名称:计算机网络A 班级:计111 计111 姓名:葛一波叶博兴 学号:110776 110768 教师:张晓明 信息工程学院计算机系

一.实验目的 1.了解协议分析仪的使用方法和基本特点,掌握使用协议分析仪分析协议的方法。 2.了解Ping命令的工作过程; 3.了解FTP协议的工作过程。 二.实验前的准备 1.熟悉Ping命令,FTP协议; 2.了解协议分析仪的功能和工作原理; 3.了解Ethereal分析仪的使用方法; 4.阅读本实验的阅读文献; 三.实验内容 1.学习捕获选项的设置和使用。 2.使用Ethereal分析仪捕获一段Ping命令的数据流,并分析其工作过程。 3.登录ftp://https://www.wendangku.net/doc/b318676771.html,,并下载三个大小不同的文件(小于1KB、1KB—1MB、1MB 以上),使用Ethereal分析仪分析其工作过程。 4.设置显示过滤器,以显示所选部分的捕获数据。 5.保存捕获的数据,分别是TEXT文件和XML文件。 四.实验要求 1.完成上述实验内容; 2.记录捕获的关键数据,并分析协议工作过程。 3.上交实验报告和保存的实验数据。 Wireshark Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。网络封包分析软件的功能可想像成 "电工技师使用电表来量测电流、电压、电阻" 的工作 - 只是将场景移植到网络上,并将电线替换成网络线。 在过去,网络封包分析软件是非常昂贵,或是专门属于营利用的软件。Ethereal的出现改变了这一切。在GNUGPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其程式码,并拥有针对其源代码修改及客制化的权利。Ethereal是目前全世界最广泛的网络封包分析软件之一。 软件简介 Wireshark使用目的以下是一些使用Wireshark目的的例子: 网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wireshark来检查资讯安全相关问题,开发者使用Wireshark来为新的通讯协定除错,普通使用者使用Wireshark 来学习网络协定的相关知识当然,有的人也会“居心叵测”的用它来寻找一些敏感信息…… Wireshark不是入侵侦测软件(Intrusion DetectionSoftware,IDS)。对于网络上的异常流量行为,Wireshark不会产生警示或是任何提示。然而,仔细分析Wireshark撷取的封包能够帮助使用者对于网络行为有更清楚的了解。Wireshark不会对网络封包产生内容的修改,

计算机网络实验HTTPFTP协议分析

实验二H T T P、F T P协议分析 1. 本次实验包括HTTP、FTP两个协议的分析(详见一、二)。 2. 参考文档所述步骤,完成数据包的捕获并进行分析; 3. 认真撰写实验报告,叙述实验过程要层次分明,对关键的过程或结果截图说明、分析,回答实验文档所提的思考题、问题。 一、超文本传输协议(HTTP)分析 【实验目的】 掌握HTTP协议的原理和报文格式; 了解HTTP协议的工作过程; 了解应用层协议与传输层协议的关系。 【实验内容】 用浏览器打开网页,捕获HTTP报文并进行分析 编辑一个HTTP数据报文并进行发送,并捕获该报文进行分析。 【实验步骤】 步骤一:使用浏览器打开网页,捕获HTTP数据包并分析: (1) 在主机上打开协议分析仪,点击工具栏上的“过滤器”,“类型过滤器”的下拉列表中 选择“HTTP协议”,确定后开始进行数据捕获:

(2) 使用实验室主机上的浏览器,例如IE,打开一个网页,如URL是 HTTP//https://www.wendangku.net/doc/b318676771.html, (3) 在协议分析器中找到捕获的数据包,观察HTTP请求报文和响应报文,以及其中所使用的命令:

【思考问题】 结合实验过程中的实验结果,问答下列问题: 1. 当实验主机上同时打开多个浏览器窗口并访问同一WEB站点的不同页面时,系统是根据什么把返回的页面正确地显示到相应窗口的?一个主页是否只有一个连接? 2. 请求主页后,返回的浏览器内容的字节长度是多少? 3. 如果请求一个不存在的网页,服务器将会应答什么? 答: 1. 当实验主机上同时打开多个浏览器窗口并访问同一WEB站点的不同页面时,系统是根据地址信息把返回的页面正确地显示到相应窗口的,一个主页是只有一个连接。 2. 请求主页后,返回的浏览器内容的字节长度是 3. 如果请求一个不存在的网页,服务器将会应答404错误。 二、FTP协议分析 【实验目的】 1、掌握FTP协议的工作原理; 2、了解FTP协议的常用命令,并领会其链路管理、理解FTP的主动模式和被动模式 3、了解应用层协议与传输层协议的关系; 【实验内容】 1. 登录FTP服务器,并捕获FTP报文进行分析;

FTP协议分析论文

FTP协议分析 邬猛 (呼伦贝尔学院计算机科学与技术学院10级软件工程 2010121406) 摘要:本论文的目的是描述FTP协议的基础理论知识,分析FTP数据传输时所捕获的不同数据包,通过数据包的分析了解FTP的工作原理。FTP(文件传输协议)使得主机间可以共享文件。使用 TCP 生成一个虚拟连接用于控制信息,然后再生成一个单独的 TCP 连接用于数据传输。控制连接使用类似 TELNET 协议在主机间交换命令和消息。文件传输协议是TCP/IP 网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层。FTP客户机可以给服务器发出命令来下载文件,上传文件,创建或改变服务器上的目录。 关键词:FTP 协议分析文件传输 1 引言 早期在Internet上传输文件,并不是一件容易的事,我们知道 Internet是一个非常复杂的计算机环境,有PC、工作站、MAC、服务器、大型机等等,而这些计算机可能运行不同的操作系统,有Unix、Dos、 Windows、MacOS等等,各种操作系统之间的文件交流,需要建立一个统一的文件传输协议,用来从一个主机把文件复制到另一个主机。虽然从一个系统向另一个系统传送文件看起来直截了当,但还有一些问题必须先解决。例如,两个文件系统可能使用不同的文件名约定,不同的方法表示文件和数据,不同的目录结构。所有这些问题已经由FTP以一种简单巧妙的方法解决了,FTP是应用层的协议,它基于传输层,为用户服务,它们负责进行文件的传输。本文就介绍了FTP的数据报文结构及其工作原理。 2FTP的工作模型 FTP采用了和HTTP一样的客户机/服务器方式,通过一系列的请求与响应来完成数据的传输。和Telnet一样,FTP需要提供一种登陆机制,即需要输入用户名和口令,才能进入远程FTP服务器,与其它客户机——服务器模型不同的是,FTP客户机与服务器之间用TCP 建立了双重连接,一个是控制连接、一个是数据连接。图2.1 给出了FTP的基本模型。客户有三个构件:用户接口、客户控制进程和客户数据传输进程。服务器有两个构件:服务器控制进程和服务器数据传输进程。控制连接是在控制进程之间进行的。数据连接是在数据传送进程间进行的。 图2.1 FTP基本模型

Linux的FTP安装及命令

下载安装VSFTPD服务(注:无客户端) yum install vsftpd 配置Vsftpd 编辑vsftpd的配置文件vi /etc/vsftpd/vsftpd.conf 以下是要更改的选项: anonymous_enable=NO #禁止匿名访问 ascii_upload_enable #允许使用ascii码上传 ascii_download_enable #允许使用ascii码下载 userlist_deny=NO #(这条需手动添加到最后)/etc/vsftpd/user_list文件里的用户才能登录。或userlist_deny=YES #默认值。/etc/vsftpd/user_list文件里存在的用户不能登录,而且不会询问密码。 修改文件/etc/vsftpd/user_list 修改文件/etc/vsftpd/ftpusers,文件内用户不能登录。 重启服务,设置开机启动: service vsftpd restart chkconfig vsftpd on 网页登陆: ftp://192.168.1.120/ ftp://username@192.168.1.120/ 在远程机上的用户帐号的读写权限决定该用户在远程机上能下载什么文件和将上载文件放到哪个目录中。 匿名登陆: 用户名:anonymous 密码:Email或者为空 用户名:FTP 密码:FTP或者为空 如果远程系统提供匿名ftp服务,用户使用这项服务可以登录到特殊的,供公开使用的目录。一般专门提供两个目录:pub目录和incoming目录。pub(/var/ftp/pub/)目录包含该站点供公众使用的所有文件,incoming目录存放上载到该站点的文件。

FTP协议分析报告

. 工程类实验报告 系:网络工程专业:网络工程年级: 2009 姓名:学号:实验课程:网络协议分析 实验室号:____田C510__ 实验设备号:实验时间: 12.26 指导教师签字:成绩: 实验四 FTP 协议分析实验 一、实验目的和要求 学习 Serv-U FTP Server 服务软件的基本配置和 FTP 客户端命令的使用,分析FTP 报文格式和 FTP 协议的工作过程。 二、实验原理 FTP 是文件传输协议(File Transfer Protocol)的简称。 FTP 基于 TCP 协议,它通过两个 TCP 连接来传输一个文件,一个是控制连接,另一个是 数据连接。相应的,在进行文件传输时,FTP 需要两个端口,分别用于控制连接端口(用 于给服务器发送指令以及等待服务器响应)和数据传输端口(在客户机和服务器之间发送 一个文件或目录列表)。 两种连接的建立都要经过一个“三次握手”的过程,同样,连接释放也要采用“四次 握手”方法。控制连接在整个回话期间一直保持打开状态。数据连接是临时建立的,在文件 传送结束后被关闭。 FTP 的连接模式有两种,PORT 和 PASV。PORT 模式是一个主动模式,PASV 是被动模式, 这里都是相对于服务器而言的。 当 FTP 客户以 PORT 模式连接服务器时,它首先动态地选择一个端口号连接服务器的 21 端口,注意这个端口号一定是 1024 以上的,因为 1024 以前的端口都已经预先被定义好, 被一些典型的服务使用或保留给以后会用到这些端口的资源服务。经过 TCP 的三次握手后,控 制连接被建立。这时客户就可以利用这个连接向服务器发送指令和等待服务器响应了。当需要从 (或向)服务器传送数据时,客户会发出 PORT 指令告诉服务器用自己的那个端口来建立一条 数据连接(这个命令由控制连接发送给服务器),当服务器接到这一指令时,会使用 20 端口 连接客户指定的端口号,用以数据传送。 当FTP 客户以 PASV 模式连接服务器时,控制连接的建立过程与 PORT 模式相同,不同 的是,在数据传送时,客户不向服务器发送 PORT 指令而是发送 PASV 指令,服务器收到

linux下FTP、SFTP命令详解

linux下FTP、SFTP命令详解 FTP> ! 从ftp 子系统退出到外壳。 FTP> ? 显示ftp 命令说明。? 与help 相同。 格式:? [command] 说明:[command]指定需要帮助的命令名称。如果没有指定command,ftp 将显示全部命令的列表。 FTP> append 使用当前文件类型设置将本地文件附加到远程计算机上的文件。 格式:append local-file [remote-file] 说明:local-file 指定要添加的本地文件。 remote-file 指定要添加local-file 的远程计算机上的文件。如果省略了remote-file,本地文件名将被用作远程文件名。 FTP> ascii 将文件传送类型设置为默认的ASCII。 说明:FTP 支持两种文件传送类型,ASCII 码和二进制图像。在传送文本文件时应该使用ASCII。 FTP> bell 切换响铃以在每个文件传送命令完成后响铃。默认情况下,铃声是关闭的。 FTP> binary(或bi)将文件传送类型设置为二进制。 FTP> bye(或by)结束与远程计算机的FTP 会话并退出ftp。 FTP> cd 更改远程计算机上的工作目录。 格式:cd remote-directory 说明:remote-directory 指定要更改的远程计算机上的目录。 FTP> close 结束与远程服务器的FTP 会话并返回命令解释程序。 FTP> debug 切换调试。当调试打开时,发送到远程计算机的每个命令都打印,前面是字符串“>”。默认情况下,调试是关闭的。 FTP> delete 删除远程计算机上的文件。 格式:delete remote-file 说明:remote-file 指定要删除的文件。 FTP> dir 显示远程目录文件和子目录列表。 格式:dir [remote-directory] [local-file] 说明:remote-directory 指定要查看其列表的目录。如果没有指定目录,将使用远程计算机中的当前工作目录。Local-file 指定要存储列表的本地文件。如果没

FTP协议原理和工作模式讲解

浅析FTP的PORT和PASV模式工作原理 摘要 通过阅读本文,您可以了解到FTP的基本的工作原理。作者以建立FTP连接到断开FTP连接的方式详细介绍了FTP会话全过程。如果您对PORT模式或者PASV模式的FTP工作原理有些疑惑,相信本文能使您了解更多的细节,使您更加从容的面对企业的网络流量以及安全的管理,特别是如果您的企业正准备在企业内部署ISA Server 2000,或许会给您发布内部服务器带来帮助! 目录 ?FTP协议概述 ?PORT模式 ?PASV模式 ?比较分析 ?图示 FTP协议概述 起初, FTP并不是应用于IP网络上的协议,而是ARPANEt网络中计算机间的文件传输协议,ARPANET是美国国防部组建的老网络,于1960-1980年使用。在那时, FTP的主要功能是在主机间高速可靠地传输文件。目前FTP仍然保持其可靠性,即使在今天,它还允许文件远程存取。这使得用户可以在某个系统上工作,而将文件存贮在别的系统。例如,如果某用户运行Web 服务器,需要从远程主机上取得HTML文件和CGI程序在本机上工作,他需要从远程存储站点获取文件(远程站点也需安装Web服务器)。当用户完成工作后,可使用FTP将文件传回到Web 服务器。采用这种方法,用户无需使用Telnet登录到远程主机进行工作,这样就使Web服务器的更新工作变得如此的轻松。 FTP是TCP/IP的一种具体应用,它工作在OSI模型的第七层,TCP模型的第四层上,即应用层,使用TCP传输而不是UDP,这样FTP客户在和服务器建立连接前就要经过一个被广为熟知的"三次握手"的过程,它带来的意义在于客户与服务器之间的连接是可靠的,而且是面向连接,为数据的传输提供了可靠的保证。 下面,让我们来看看,一个FTP客户在和服务器连接是怎么样的一个过程(以标准的FTP端口号为例)。 首先,FTP并不像HTTP协议那样,只需要一个端口作为连接(HTTP的默认端口是80,FTP 的默认端口是21),FTP需要2个端口,一个端口是作为控制连接端口,也就是21这个端口,用于发送指令给服务器以及等待服务器响应;另一个端口是数据传输端口,端口号为20(仅PORT 模式),是用来建立数据传输通道的,主要有3个作用 ?从客户向服务器发送一个文件。 ?从服务器向客户发送一个文件。 ?从服务器向客户发送文件或目录列表。 其次,FTP的连接模式有两种,PORT和PASV。PORT模式是一个主动模式,PASV是被动模式,

FTP常用命令

1.登陆命令: $ftp 服务器命或服务器ip地址 username:用户名 password:密码 ftp> 2.目录操命令: 显示目录下的文件: ftp>ls 显示服务器上的目录: ftp>ls H* 查看当前目录: ftp>cd(或pwd) 进入上一级目录 ftp>cd .. 更改本地机上的当前目录 ftp>lcd /usr/loca //把当前目录改成/usr/loca 进入子目录: ftp>cd 子目录名 3.文件传输命令: 下载命令: ftp>get 诗经·氓.rtf 下载多个文件: ftp>mget 诗经·氓.rtf hello.rtp 郭鹏翔.jpg **注:mget命令允许用通配符考贝多个文件。mget命令会提示用户输入待拷贝的每个文件。如果回答y,那么文件拷贝到本地机上的当前目录下。 上传命令: ftp>put hello.rtf //上传hello.rtf文件到远端的ftp服务器上。 上传多个文件: ftp>mput 诗经·氓.rtf hello.rtf pr命令.rtf **注意:mput和mget命令要注意两个问题: (1)、不能对目标文件指定命字,在命令行上所有的文件都视做源文件 (2)、mput,mget两个命令不能对目录进行上传下载,只能对文件 4.设置文件的传输方式: 二进制传输: ftp>binary //把传输模式转换一下 ftp>put putty.exe ascII传输: ftp>ascii //把传输模式转换成ascII模式 ftp>put hello.txe **注:文件传送有两种方式,即ASCII码和二进制码。ASCII方式传送略快些,但要求被传送文件必须是ASCII码文本文件。二进制码方式可以传送文本和非文本,因此,对所有文件传送都可以用二进制方式。输入命令ascii,设置为ASCII方式。输入命令binary为二进制方式。 5.退出命令:ftp>quit

(完整版)FTP协议详解

FTP 概述 文件传输协议(FTP)作为网络共享文件的传输协议,在网络应用软件中具有广泛的应用。FTP的目标是提高文件的共享性和可靠高效地传送数据。 在传输文件时,FTP 客户端程序先与服务器建立连接,然后向服务器发送命令。服务器收到命令后给予响应,并执行命令。FTP 协议与操作系统无关,任何操作系统上的程序只要符合FTP 协议,就可以相互传输数据。本文主要基于LINUX 平台,对FTP 客户端的实现原理进行详尽的解释并阐述如何使用C 语言编写一个简单的FTP 客户端。 FTP 协议 相比其他协议,如HTTP 协议,FTP 协议要复杂一些。与一般的C/S 应用不同点在于一般的C/S 应用程序一般只会建立一个Socket 连接,这个连接同时处理服务器端和客户端的连接命令和数据传输。而FTP协议中将命令与数据分开传送的方法提高了效率。 FTP 使用2 个端口,一个数据端口和一个命令端口(也叫做控制端口)。这两个端口一般是21 (命令端口)和20 (数据端口)。控制Socket 用来传送命令,数据Socket 是用于传送数据。每一个FTP 命令发送之后,FTP 服务器都会返回一个字符串,其中包括一个响应代码和一些说明信息。其中的返回码主要是用于判断命令是否被成功执行了。 命令端口 一般来说,客户端有一个Socket 用来连接FTP 服务器的相关端口,它负责FTP 命令的发送和接收返回的响应信息。一些操作如“登录”、“改变目录”、“删除文件”,依靠这个连接发送命令就可完成。 数据端口 对于有数据传输的操作,主要是显示目录列表,上传、下载文件,我们需要依靠另一个Socket来完成。 如果使用被动模式,通常服务器端会返回一个端口号。客户端需要用另开一个Socket 来连接这个端口,然后我们可根据操作来发送命令,数据会通过新开的一个端口传输。 如果使用主动模式,通常客户端会发送一个端口号给服务器端,并在这个端口监听。服务器需要连接到客户端开启的这个数据端口,并进行数据的传输。 下面对FTP 的主动模式和被动模式做一个简单的介绍。 主动模式(PORT) 主动模式下,客户端随机打开一个大于1024 的端口向服务器的命令端口P,即21 端口,发起连接,同时开放N +1 端口监听,并向服务器发出“port N+1” 命令,由服务器从它自己的数据端口(20) 主动连接到客户端指定的数据端口(N+1)。 FTP 的客户端只是告诉服务器自己的端口号,让服务器来连接客户端指定的端口。对于客户端的防火墙来说,这是从外部到内部的连接,可能会被阻塞。 被动模式(PASV)

相关文档