FTP客户端的实现及配置_第1页
FTP客户端的实现及配置_第2页
FTP客户端的实现及配置_第3页
FTP客户端的实现及配置_第4页
FTP客户端的实现及配置_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机网络编程技术

FTP客户端程序设计2024/7/11第一部分:FTP原理及客户端的构架第二部分:配置FTP服务器以及IIS服务器2024/7/11第一部分:FTP原理及客户端的构架

MFC开发

工具:vc++6.0或visualstudio2013

2024/7/11任务分工:组长:周勤如:IIS搭建,FTP服务器的搭建,客户端整体框架设计与FTP协议的连接等小组成员:龙威:FTP的传输模式的设计小组成员:李卓:FTP工作模式的设计小组成员:杨雪香:FTP的登录方式设计2024/7/11本次课设架构配置FTP服务FTP概述FTP客户端什么是FTPFTP服务器FTP客户端FTP命令行Web方式FTP客户端软件安装和配置FTP服务安装FTP服务配置默认FTP站点虚拟目录2024/7/11本节的主要内容FTP服务的工作原理FTP协议规范FTP协议的2种工作模式基于Socket类的FTP服务编程基于TcpClient类的FTP服务编程2024/7/11什么是FTP文件传输协议(FileTransferProtocol)利用FTP可以给用户提供上传和下载文件的服务采用客户机/服务器方式FTP服务器客户机建立连接传输请求给予响应2024/7/11FTP的使用分析FTP的广泛应用:文件共享;远程传输;……2024/7/11常见的FTP客户端软件有哪些?Server-uFLASHFTP、LEAPFTP、CuteFTP(FTP三剑客)……

FTP服务的工作原理2024/7/11(1)工作原理(1)控制连接与数据连接控制连接:用于在通信双方之间传输FTP命令与响应信息,完成建立连接、身份认证与异常处理等控制操作;数据连接用于在通信双方之间传输文件或目录信息。连接规则:控制连接要在数据连接建立之前建立,控制连接要在数据连接释放之后释放。只有在建立数据连接之后才能传输数据,并且在数据传输过程中需要保持控制连接不中断。2024/7/11连接与释放控制连接与数据连接建立的发起者只能是FTP客户机;控制连接释放的发起者只能是FTP客户机;数据连接释放的发起者可以是FTP客户机或服务器。如果在数据连接保持的情况下控制连接中断,这时可以由FTP服务器要求释放数据连接。2024/7/11(2)FTP的传输模式ASCII传输模式文件传输模式(自动模式)二进制数据传输模式2024/7/11(3)FTP的登录方式ftp://FTP站点的IP地址或者域名/虚拟目录名ftp://0101/ftpftp://ftpclient/ftp2024/7/11FTP协议规范(1)FTP命令分为6组:①接入命令:USER、PASS、QUIT、ACCT、REIN和ABOR。②文件管理命令:CWD、CDUP、DELE、LIST、NLIST、MKD、PWD、RMD、RNFR、RNTO和SMNT。③数据格式化命令:TYPE、STRU和MODE。④端口定义命令:PORT和PASV。⑤文件传输命令:RETR、STOR、APPE、STOU、ALLO、REST和STAT。⑥其他命令:HELP、NOOP、SITE和SYST。2024/7/11(2)常用的FTP命令FTP命令参数说明USER用户标识符用户信息PASS用户密码密码LIST目录名列出子目录或文件CWD目录名改变到另一个目录MKD目录名创建新目录RMD目录名删除目录STOR文件名存储当前目录下文件(从客户机传送到服务器)QUIT应付费的账务向系统注销ABOR应付费的账务前面的命令异常终止DELE文件名删除文件PWD显示当前目录名2024/7/11FTP命令参数说明TYPEA(ASCII),E(EBCDIC),I(图像),N(非打印),T(TELNET)定义文件类型和当需要时定义打印格式MODES(流),B(块),C(压缩)定义传输方式PORT6个数字的标识符客户机选择端口PASV6个数字的标识符服务器选择端口RETR文件名读取当前目录下文件(从服务器传送到客户机)REST文件名在指明的数据点给文件标记确定位置STAT文件名返回文件的状态HELP询问关于服务器的信息SYST命令询问服务器使用的操作系统2024/7/11(3)FTP响应码:通过百度搜索可以知道的2024/7/11(4)FTP命令与响应码的应用USER命令的响应有230、331、421、500、501与530;PASS命令的响应有230、332、421、500、501与530;PASV命令的响应有227、421、500、501与530;LIST命令的响应有125、150、226、250、421、425、426、450、500、501与530;RETR命令的响应只是比LIST命令多了550。另外,建立连接相关的响应有120、220与421。(5)FTP传送文件列表或目录的过程2024/7/11

FTP协议的2种工作模式PORT模式(主动模式)

FTP服务器使用TCP21和20两个端口。PASV模式(被动模式)

FTP服务器使用TCP21和大于1024的随机端口。2024/7/11PORT模式2024/7/11PASV模式2024/7/11PORT和PASV模式比较(1)客户机在内网时的FTP模式特点被动连接模式2024/7/11主动传输模式(2)服务器在内网时的FTP模式特点2024/7/11基于Socket类的FTP程序设计FTP上传下载的程序,它符合FTPPSAV模式。Socket类允许使用ProtocolType枚举中所列出的任何一种协议执行异步和同步数据传输。

2024/7/11FTP客户端程序设计2024/7/11客户端下载程序段//重画窗体内的所有控件,使窗体显示完整foreach(Controlcontrolinthis.Controls){control.Update();}stringpath=this.listBoxFile.SelectedItem.ToString();sw.WriteLine("RETR"+path);sw.Flush();this.listBoxInfo.Items.Add("发送:RETR"+path);this.listBoxInfo.SelectedIndex=this.listBoxInfo.Items.Count-1;stringstr=sr.ReadLine();this.listBoxInfo.Items.Add("收到:"+str);this.listBoxInfo.SelectedIndex=this.listBoxInfo.Items.Count-1;if(str=="150")//表示服务器文件状态良好{ stringstr1=sr.ReadLine(); this.listBoxInfo.Items.Add("文件长度:"+str1+"字节"); this.listBoxInfo.SelectedIndex=this.listBoxInfo.Items.Count-1; intlength=Convert.ToInt32(str1); gressBar1.Minimum=0; gressBar1.Maximum=length; FileStreamfs=newFileStream(myfile.FileName,FileMode.Create,FileAccess.Write); for(inti=0;i<length;i++) {fs.WriteByte((byte)netStream.ReadByte()); fs.Flush(); gressBar1.Value=i; } fs.Close(); MessageBox.Show("下载完毕!"); gressBar1.Value=0;}2024/7/11客户端关闭连接代码段sw.WriteLine("QUIT"); sw.Flush(); this.listBoxInfo.Items.Add("发送:QUIT"); client.Close();2024/7/11小结FTP协议具有明显的两个特点:(1)具有两种连接,即控制连接和数据连接。控制连接负责某客户与服务器之间的连接管理,而数据连接用于每次具体数据传输,是在控制连接建立之后开始的。在数据连接结束之后,才会有控制连接的结束。(2)具有两种工作模式,即主动模式和被动模式,指的是服务器在数据连接方面的主动性或被动性。在网络安全隐患方面各有特点,主动模式是担心公开的端口号20会被网络嗅探工具捕获传输数据,而被动方式是由于会开放所有大于1024的端口号,也会给安全带来问题。其对策一是结合防火墙一起,设置ACL以避免开放其他端口;对策二是采用具有状态检测的防火墙。2024/7/11在了解FTP的基本命令和响应码之后,就可以编写常规的FTP客户端程序可以分别考虑主动模式和被动模式的设计方法,两者具有不同的工作特点。在程序实现上,采用Socket类和TcpClient类,都容易实现FTP服务功能。2024/7/11第二部分:配置FTP服务器和

IIS服务器

通过控制面板设置2024/7/11本节目标理解FTP服务器工作方式 掌握默认FTP站点的配置掌握FTP客户端的使用FTP服务器提供FTP服务并有一定存储空间的计算机专用服务器个人计算机两种登录方式匿名登录授权帐户登录2024/7/11FTP客户端FTP客户端是用户所使用的计算机功能有下载:将服务器的文件下载到本地硬盘上传:将本地硬盘的文件上传到服务器三种连接方式命令行方式连接Web方式连接FTP客户端软件连接2024/7/11安装FTP服务1234562024/7/11配置默认FTP服务器配置IIS服务器的内容有添加FTP站点设置安全帐户消息主目录安全性2024/7/11设置FTP站点2024/7/11添加FTP站点2024/7/11设置安全验证2024/7/11添加成功2024/7/11虚拟目录虚拟目录能实现本地目录映射到FTP站点的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论