08. FTP 文件传输 ❀ 数据包分析工具 Wireshark

来源:互联网 发布:华星全站仪传输软件 编辑:程序博客网 时间:2024/06/06 03:13

        【简介】FTP 是File Transfer Protocol(文件传输协议)的英文简称,用于Internet上的控制文件的双向传输。FTP一共会创建两条信道,其中一条为命令信道,另一条是专门的数据信道。通常,FTP服务器会用端口21来监听连接,客户端会用一个随机端口来发送和接收数据。根据FTP标准,21端口会用于建立命令通道,而20端口则会用来建立数据通道。


  捕获 FTP 数据包

        FTP也是一个应用程序(Application),基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。


        ① 启动 Wireshark,选择上网的网卡接口,点击捕获图标开始捕获。


        ② 这里我们启动 SecureFX,建立新的连接。FTP软件很多,功能都是大同小异。

        ③ 在新建连接界面,选择协议为FTP,输入FTP服务器的IP地址,默认端口号是21,输入用户名和密码,点击连接。


        ④ 登录了FTP服务器,可以看到服务器的文件目录。


        ⑤ FTP主要的功能就是上传下载文件,上传文件的操作很简单,只要鼠标点击文件拖到FTP的目录里就可以了。


        ⑥ 文件上传成功,可以看到上传目录、时间、速度等信息。


        ⑦ 下载也同样方便,鼠标点击拖动服务器上的文件到本地电脑上指定的目录就可以了。


        ⑧ 下载时会询问文件是否是文本文件,默认是二进制文件,点击【OK】。


        ⑨ 文件下载成功。


        ⑩ 点击停止按钮,中止包捕获。


        ⑪ 显示过滤器过滤出本机地址与FTP服务器之间的所有数据包。

  FTP 数据包分析

  客户端会采用两类模式来与服务器进行通信,这两种模式分别为主动模式和被动模式。早期设备会默认使用主动模式,但近些年来,设备已经默认开始使用被动模式。

        ① 客户端通过一个临时端口向服务器的21端口发送一条SYN请求消息,服务器返回SYN/ACK消息,客户端向服务器发送ACK消息,以确认它会使用这条信道来发送命令。服务器返回信息,FPT准备好了,可以接受新用户登录了。

        ② 客户端向服务器发送消息,我要登录了,先提交用户,服务器反馈,用户通过。客户端再提交密码,这次服务器说密码不对,不能登录。客户端说那我再来一次,提交用户,用户通过,提交密码,这次密码对了,用户登录成功。使用FTP的一大不利因素在于,网络中的数据都是以明文的形式传输的,其中也包括用户名和密码。


        ③ 一般来说,被动模式在默认情况下是必须启动的。在这种模式下,客户端会请求服务器监听数据端口,等待它发起连接。


        ④ 对FTP数据流进行重组十分简单,因为除了数据之外,并没有什么其它信息在进行传输。鼠标右键FTP数据包,弹出子菜单中选择【追踪流】-【TCP流】。


        ⑤ 客户端和服务器之间的整个通信是通过数据信道和命令信道进行传输的,软件会将其转换成人类能够读懂的格式。红色的文本是客户端发送的信息,蓝色文本则是客户端接收到的信息。


        ⑥ 一旦数据传输完成,发送方主机就会发关一个FIN数据外来关闭连接,而接收方则会使用ACK来对FIN进行确认。接收方也会发送一个FIN数据包。如果双方设备都希望共享更多数据,那么它们就会使用随机端口号建立新的数据信道。


老梅子   QQ:57389522



原创粉丝点击