FTP上传下载完整教程.docx
- 文档编号:24276105
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:28
- 大小:36.43KB
FTP上传下载完整教程.docx
《FTP上传下载完整教程.docx》由会员分享,可在线阅读,更多相关《FTP上传下载完整教程.docx(28页珍藏版)》请在冰豆网上搜索。
FTP上传下载完整教程
FTP上传下载完整教程
第一章什么是FTP
一、FTP协议
什么是FTP呢?
FTP是TCP/IP协议组中的协议之一,是英文FileTransferProtocol的缩写。
该协议是Internet文件传送的基础,它由一系列规格说明文档组成,目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。
简单的说,FTP就是完成两台计算机之间的拷贝,从远程计算机拷贝文件至自己的计算机上,称之为“下载(download)”文件。
若将文件从自己计算机中拷贝至远程计算机上,则称之为“上载(upload)”文件。
在TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。
二、FTP服务器和客户端
同大多数Internet服务一样,FTP也是一个客户/服务器系统。
用户通过一个客户机程序连接至在远程计算机上运行的服务器程序。
依照FTP协议提供服务,进行文件传送的计算机就是FTP服务器,而连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端。
用户要连上FTP服务器,就要用到FPT的客户端软件,通常Windows自带“ftp”命令,这是一个命令行的FTP客户程序,另外常用的FTP客户程序还有CuteFTP、Ws_FTP、Flashfxp、LeapFTP、流星雨-猫眼等。
三、FTP用户授权
1.用户授权
要连上FTP服务器(即“登陆”),必须要有该FTP服务器授权的帐号,也就是说你只有在有了一个用户标识和一个口令后才能登陆FTP服务器,享受FTP服务器提供的服务。
2.FTP地址格式
FTP地址如下:
ftp:
//用户名:
密码@FTP服务器IP或域名:
FTP命令端口/路径/文件名
上面的参数除FTP服务器IP或域名为必要项外,其他都不是必须的。
3.匿名FTP
互连网中有很大一部分FTP服务器被称为“匿名”(Anonymous)FTP服务器。
这类服务器的目的是向公众提供文件拷贝服务,不要求用户事先在该服务器进行登记注册,也不用取得FTP服务器的授权。
Anonymous(匿名文件传输)能够使用户与远程主机建立连接并以匿名身份从远程主机上拷贝文件,而不必是该远程主机的注册用户。
用户使用特殊的用户名“anonymous”登陆FTP服务,就可访问远程主机上公开的文件。
许多系统要求用户将Emai1地址作为口令,以便更好地对访问进行跟综。
匿名FTP一直是Internet上获取信息资源的最主要方式,在Internet成千上万的匿名FTP主机中存储着无以计数的文件,这些文件包含了各种各样的信息,数据和软件。
人们只要知道特定信息资源的主机地址,就可以用匿名FTP登录获取所需的信息资料。
虽然目前使用WWW环境已取代匿名FTP成为最主要的信息查询方式,但是匿名FTP仍是Internet上传输分发软件的一种基本方法。
如redhat、autodesk等公司的匿名站点。
四、FTP的传输模式
FTP协议的任务是从一台计算机将文件传送到另一台计算机,它与这两台计算机所处的位置、联接的方式、甚至是是否使用相同的操作系统无关。
假设两台计算机通过ftp协议对话,并且能访问Internet,你可以用ftp命令来传输文件。
每种操作系统使用上有某一些细微差别,但是每种协议基本的命令结构是相同的。
FTP的传输有两种方式:
ASCII传输模式和二进制数据传输模式。
1.ASCII传输方式
假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。
但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。
在拷贝任何非文本文件之前,用binary命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。
2.二进制传输模式
在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。
即使目的地机器上包含位序列的文件是没意义的。
例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。
如果你在ASCII方式下传输二进制文件,即使不需要也仍会转译。
这会使传输稍微变慢,也会损坏数据,使文件变得不能用。
(在大多数计算机上,ASCII方式一般假设每一字符的第一有效位无意义,因为ASCII字符组合不使用它。
如果你传输二进制文件,所有的位都是重要的。
)如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。
五、FTP的工作方式
FTP支持两种模式,一种方式叫做Standard(也就是PORT方式,主动方式),一种是Passive(也就是PASV,被动方式)。
Standard模式FTP的客户端发送PORT命令到FTP服务器。
Passive模式FTP的客户端发送PASV命令到FTPServer。
下面介绍一个这两种方式的工作原理:
Port模式FTP客户端首先和FTP服务器的TCP21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。
PORT命令包含了客户端用什么端口接收数据。
在传送数据的时候,服务器端通过自己的TCP20端口连接至客户端的指定端口发送数据。
FTPserver必须和客户端建立一个新的连接用来传送数据。
Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。
FTP服务器收到Pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTPserver不再需要建立一个新的和客户端之间的连接。
很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP20无法和内部网络的客户端建立一个新的连接,造成无法工作。
六、FXP
FXP说简单点就是一个FTP客户端控制两个FTP服务器,在两个FTP服务器之间传送文件。
FXP的全称为FileExchangeProtocol――文件交换协议,可以认为FXP本身其实就是FTP的一个子集,因为FXP方式实际上就是利用了FTP服务器的Proxy命令,不过它的前提条件是FTP服务器要支持PASV,且支持FXP方式。
FXP传送时,文件并不下载至本地,本地只是发送控制命令,故FXP传送时的速度只与两个FTP服务器之间的网络速度有关,而与本地速度无关。
因FXP方式本地只发送命令,故在开始传送后,只要本地不发送停止的命令,就算是本地关机了,FXP仍在传送,直至一个文件传送完成或文件传送出错后,FTP服务器等待本地发送命令时,才会因不能接收到命令而终止FXP传送。
因为上述的原因,FXP传送出错时,本地的用户进程还留在FTP服务器中,并没有退出,如此时再次连接FTP服务器,可能会因用户线程超过允许,FTP服务器提示客户已登陆并拒绝客户端的连接,直至服务器中的傀儡进程因超时或其他原因被FTP服务器杀死后,才能再次连接FTP服务器。
成功FXP有两个必要条件:
1.两个FTP服务器均支持FXP;2.两个FTP服务器均支持PASV方式。
但并不是说满足这两个条件的FTP服务器均经本地操作成功FXP,这还与本地与FTP服务器的网络状况有关。
故有时会出现同样两个FTP,别人可以FXP,而你不可以的情况。
第二章FTP客户端软件
要登陆FTP服务器,你需要一款FTP客户端软件,Windows操作系统自带了FTP命令,但只能在命令行下操作,且要求用户熟悉FTP内部命令,多有不便,故安装一款好用的FTP客户端软件是有必要的。
目前常用的FTP客户端软件有Cuteftppro、Flashfxp、LeapFTP、流星雨-猫眼等,现就常用的Cuteftppro给大家做一个简单的介绍。
一、全局选项
选择“工具/全局选项”(在2.0中是“编辑/全局选项”)或使用快捷键“Alt+F7”就可以打开Cuteftppro的全局选项对话框。
全局选项中保存了Cuteftppro工作时的一些参数,正确的设置好这些参数是Cutepropro正常工作的关键,好的参数设置能提高自动化程度和工作的效率。
全局选项中的参数很多,现就常用的一些参数做一个简单的介绍。
1.常规选项
(1)选中“在Windows启动时开始Cuteftppro传送引擎”将在每次系统启动时自动加载FTP传送引擎。
(2)程序退出事件
建议选择“如果任务挂起则不关闭传送引擎”,这样当你关闭Cuteftppro时只要传送任务没有全部完成就会自动在后台传送文件,而不会退出传送。
而选择关闭传送引擎则会在退出Cutepropro管理界面后同时也停止了文件的传送。
(3)下载文件夹默认
选中“在本地窗格使用当前文件夹为默认”则每次下载文件的默认保存文件夹为本地窗格中的当前文件夹。
否则,每次下载文件默认保存路径为此处指定的文件夹。
2.连接选项
全局连接的最大数量:
指定Cuteftppro的最大线程数,所在站点加在一起的数值。
每个站点连接的最大数量:
指定单个站点的最大连接数,建议设为1。
连接重试尝试:
在这设定重试的次数,这个当然是多多益善了,
重试延迟:
这个设置每次重试的间隔时间,建议不要设置太小,且有的FTP站点当你的重试时间过短时会自动封锁你的帐户或IP。
数据连接类型:
建议设置为PASV模式。
匿名登录邮件地址:
随便写一个Email的地址就可以了。
断开前发送quit:
这个不用想,选中不会错。
3.传输选项
传送方式:
设置默认的传送方式,建议选自动检测。
重新连接并续传:
设置传送超时的时间。
超过这个时间如果没接收到数据,Cuteftppro就会自动重连接服务器并续传,建议这个值不要太小,设置成60秒或以上的值是不错的选择。
所有被传送后:
这个地方设置当所有队列完成后的操作,常用的选择有“断开interner”或关机。
这样,当所有传送都完成时程序就会自动断开网络连接或关机。
最大线程:
设置多线下载时的最大线程,建议不要大于4。
当续传时在APPE前发送REST命令:
建议选中这项确保续传正确。
4.智能保持连接
许多FTP站点都设置了空闲超时,一但你在服务器设定的时间内没有动作,服务器将自动将你踢除,设置了智能保持连接后,Cuteftppro将自动发送一些FTP命令,就能避免这个现象,大大的方便了咱们。
页面最上面的复选框,不用多想,一定是要选中的了。
第二个是设置空闲多久后系统自动发送命令,建议不要太大,30秒比较合适。
第三个是设置智能保持连接的时间,这个你自己看着办就是了,我设置的是30分钟。
随机间隔,这个设置SKA命令的间隔时间,只要最大不超过服务器的空闲超时时间就可以了,当然也不能设置得太短了。
命令框,在这里添加SKA命令。
关于这个设置大家可以参考我的设置。
5.智能覆盖
对于续传,好的覆盖规则能节约你大量的时间且是全自动操作无须人工干预。
首先确保选中了第二个单选框,这样你定制的规则才会有效。
至于规则,自己动脑子想啦。
推荐几条规则:
当文件日期相同,大小更小,介于任何传送,续传;
当文件日期相同,大小更大,介于任何传送,覆盖;
当文件日期更新,大小更大,介于下载,续传;
其他的自己想吧。
二、站点管理
在Cuteftppro的站点管理器中你可以方便的管理你的FTP站点。
在这你可以建立、删除站点,分类整理站点,导入、导出站点列表。
你还可以为站点管理器设置密码。
在站点管理器中,选中一个站点文件夹,单击右键,就可以建立、删除、重命名站点或站点文件夹。
站点管理器支持拖动,你可以将一个站点从一个文件夹拖至另一个文件夹中,如在拖动时按住Ctrl键,将同时复制站点。
你还可以给站点管理器加上密码,右键单击站点管理器的空白处,选择站点管理器安全,设置密码即可。
在站点管理器的空白处单击右键,从弹出的菜单中,你可以选择导入或导出站点列表,当然你也可以从“工具/站点管理器”中选择相应的菜单完成这个操作。
Cuteftppro支持导入的站点格式有:
其它版本Cuteftppro和Cuteftp的站点文件、Leapftp的站点文件、WS-ftp的站点文件和纯文本格式站点文件等,导出则只能导出成文件格式。
通过一个简单的技艺,你可以在导出站点时保持Cuteftppro的站点列表的所有格式,这只要复制Cuteftppro的用户站点文件sm.dat就可以了。
对于win2000或winXP这个文件保存在这个目录中:
XocumentsandSettings电脑中你的用户名ApplicationDataGlobalSCAPECuteftppro.0sm.dat。
其中X为系统的安装盘符,最后一个目录是版本号,对于Cuteftppro2.0,最后一个目录就是2.0而不是3.0。
三、多线程下载和FXP
Cuteftppro最大的特点就是多线程下载,他可以将一个文件分成几部分同时下载,这样能大大提高下载速度。
选中想下载的文件后,单击右键,从弹出菜单中选择“高级下载/多线程下载”就可以了。
提醒大家注意的是,在多线下载时,如果其中一线完成了,你不要在队列中清除那个已完成的线程,否则Cuteftppro下载就会出错,我就曾误操作而不得不重下了2个700M的文件,惨痛的教训啊。
同样,在做FXP传送时只要单击右键,从弹出的菜单中选择“站点到站点传送”然后选择目的站点就可以了。
但这种操作方式只能将文件传到目的FTP的主目录或站点设置中设置的自动切换目录中,不太方便。
更好的方法是在Cuteftppro中同时连接两个FTP,在源FTP中选中目标后,右键选复制,然后切换到目的FTP中粘贴,这时Cuteftppro会提示你是否移动,选移动就可以了。
第三章FTP服务器软件
一、Serv-U简介
Serv-U是一款功能强大的FTP服务器软件,他的管理界面友善,性能稳定,支持断点续传、支持带宽限制、支持磁盘配额、支持远程管理、支持虚拟主机等,是使用最广泛的FTP服务器软件。
有了它,你就可以将你的个人电脑变为一台FTP服务器。
Serv-U由两大部分组成,FTP引擎和用户管理界面。
Serv-U引擎(ServUDaemon.exe)是一个常驻后台的程序,是整个软件的核心部分,它负责处理来自各种FTP客户端软件的FTP命令,也是负责执行各种文件传送的软件。
在运行Serv-U引擎也就是ServUDaemon.exe文件后,它将作为一个后台服务运行,看不到任何界面和消息提示。
Serv-U引擎可以在任何Windows平台下作为一个本地系统服务来运行,系统服务随操作系统的启动而开始运行,而后我们就可以运行用户界面程序了。
在Win2000/XP系统中,Serv-U会自动安装为一个系统服务,但在Win9x/Me中,你需要在“本地服务器”面板中选择“自动开始”,才能让它转为系统服务。
Serv-U用户管理界面(ServUAdmin.exe)也就是Serv-U管理员,它负责与Serv-U引擎之间的交互,指示Serv-U按用户的设定配置工作。
通过用户管理界面,你可以完成Serv-U配置和管理,同时还能监视FTP的工作情况、实时状态。
二、FTP服务器架设流程
架设FTP服务器的简单流程如下:
1.安装FTP服务器软件,如Serv-U。
软件的安装我不准备讲解了,相信大家都能很轻松的完成这个任务。
2.正确配置有FTP服务器软件,使之正确运行。
当你在FTP客户端软件中能用ftp:
//127.0.0.1这个地址成功登陆你的FTP服务器,也就是说能正常从本机登陆FTP服务器,这一步通过了,说明FTP服务器软件工作基本正常。
如果不能登陆或出现其他问题,仔细检查FTP服务器的设置。
登陆测试完成后,你还应该测试每一个用户的访问权限等设置,同样,用ftp:
//127.0.0.1这个地址登陆,但每次使用不同的用户,测试每一个用户的访问权限,上传、下载、续传等功能。
测试正常后,就可以进入下步的设置了。
3.正确配置使互连网(局域网)的用户能正常访问你架设的FTP。
如果你安装了防火墙软件,则要对防火墙进行相应的设置,使之允许外部连接你的FTP命令端口;如果你没有固定的公网IP,使用建议动态域名系统;如果架设FTP服务器的计算机是位于防火墙或局域网内部,则必须进行端口映射。
这一步设置完成后,就得请其他人通过互联网帮你测试FTP运行情况,如果能正常访问,那么恭喜你,你的FTP服务器架设成功,否则,仔细查看FTP客户端软件给出的出错消息,分析出错消息,找出原因,解决后再次测试。
三、建立一个FTP服务器
Serv-U的安装很简单,一路点“Next”就是了,在Serv-U安装完成后会指导你创建一个域和用户帐号,如下图。
如果你不习惯E文的话,你可以取消他,汉化后再手工建立域和用户帐号。
这里的E文都很简单,咱们现在选“Next”,开始建立一个域并建立几个用户帐号。
在Serv-U中,一个域就是一个单独的FTP服务器,创建一个域也就是创建了一个FTP服务器。
在接下来的对话框中,Serv-U会依次要求你输入服务器IP等信息,我们一步步来做。
第一个对话框问你是否要图标菜单,这个当然选是了;
第二步问你是否在本地运行FTP服务,选是,这一步可能要会花点时间,咱们不急;
下一步Serv-U要你填写服务器的地址,一般个人用户没有固定的IP,留空直接点下一步就是了;
域名:
自己随便取个名字吧,象我的MagicFire就不错;
是否安装为系统服务:
安装为系统服务后,开机时就能自动启动FTP服务,选是;
是否允许匿名用户:
你自己看着办了,一般选是;
匿名用户主目录:
匿名用户登陆后进来的目录,选择硬盘中的一个目录;
是否销定用户于主目录中:
建议选是,这样安全;
是否创建其他用户:
选是开始创建其他用户,过程与创建匿名用户差不多,选否的话,就可以结束创建向导。
这时已成功创建了一个域了,你可以通过Serv-U的管理程序配置、管理你刚才创建的域。
大多数国人的E文不是很好,就象我,故汉化一下是必要的。
先在系统栏的Serv-U图标上单击右键,在弹出的菜单中停止Serv-U服务,然后再关闭Serv-U的管理界面。
记住,仅仅关闭Serv-U的管理界面并不能停止Serv-U服务,Serv-U还在后台默默的工作。
停止Serv-U服务后,就可以汉化Serv-U了。
安装汉化包大家都会吧。
四、FTP服务器设置
刚才虽说已经建立了一个基本的FTP服务器,但要使FTP服务器能更好的工作,加入更多的功能,还得仔细配置Serv-U,使它更好的为咱们服务。
我不想详细讨论Serv-U的各项设置与参数,因为这方面的教程网上很多,各位大可以参照南山或吕荣达写的教程,这里仅讨论一些在Serv-U设置中常见的问题及本人在使用Serv-U过程中的一些经验,希望能对大家有所启发。
启动Serv-U的管理界面,服务器的所有配置均在这里完成,同时通过管理界面,还可以监视Serv-U的工作情况、监视当前用户的活动。
管理界面由两个大的窗口组成,左边树形结构列出了当前所有的服务器和域,右边是左边每一项的详细设置,你可以在右面板中设置Serv-U的每一个细节。
改动了Serv-U的每一项设置后,一定保存后才能生效,你可以在菜单中选择“设置/应用”或在工具栏中按下应用按钮“保存”来保存Serv-U的设置,并使之立即生效。
1.常见问题及技巧
(1)如果你不清楚设置的具体含义,不要改动Serv-U的默认设置。
(2)在“本地服务器/设置/常规”面板中选中“检查匿名用户密码”将使得IE不能正常登陆你的FTP。
(3)在“本地服务器/设置/常规”面板中选中“删除部分已上传的文件”将使你的FTP服务器上传不支持续传。
(4)在“本地服务器/设置/常规”面板中选中“禁用反超时调度”且可以使客户端的智能保持连接无效,建议选中。
目前多数FTP客户端软件均支持智能保持连接功能。
(5)在“本地服务器/设置/常规”面板中选中“拦截FXP”将使你的FTP服务器不支持FXP,建议至少在上传帐户中不能选中此项。
(6)在“本地服务器/设置/常规”面板中的最下面一项“拦截连接超过XX次,于YY秒,ZZ分钟”含义如下:
如果某用户在YY时间内连接次数XX次,且禁止ZZ分钟。
建议选中此项并设置相应的时间。
(7)无条件选中“本地服务器/设置/高级”面板中的“加密密码”和“启用安全”两项。
(对于网络条件不对或网络时延很大的环境中,选中“本地服务器/设置/高级”面板中的“禁用Nagle运算法则”。
(9)对于流量很大的FTP站点,适当加大“本地服务器/设置/目录缓存”中的目录缓存大小和超时设置。
(10)在每个用户的“常规”面板中选中“隐藏隐藏文件”、不要选中“总是允许登录”和“允许用户更改密码”,但对于系统管理员则相反。
(11)适应设置用户的“空闲超时”、“登陆线程”和“下载速度”很有必要。
建议下载用户给一线程,空闲超时不大于5分钟。
(12)无条件选中“锁定用户于目录中”这个选项。
(13)如无需要,不要启用磁盘配额和上传/下载率,有许多FTP不能正常访问就是因为这里设置不对引起的。
(14)鉴于目前扫PUB、黑FTP以及其他攻击情况日益增多,网络的安全状况越来越差,建议FTP命令端口不要用标准的21端口。
2.目录权限设置
关于目录访问权限,一定要小心设置,不要多给权限,也不能少给。
下载帐户至少要求有读取的权限,可以给列表和目录继承权限;上传帐户至少要求有写的权限,可以给追加、目录创建和子目录继承的权限。
权限设置关系系统安全,切记不要能多余的权限,尤其是写、删除、执行的权限。
另在Serv-U中目录访问权限和IP规则有优先级的,排在上面的规则比下面的优先级高,这点请大家注意。
3.用户登陆消息
在Serv-U中,你可以自定义FTP服务器的登陆消息,切换目录时的消息和用户退出登陆的消息。
消息文件是一个文本文件,你可以用任何文本编辑工具编辑消息文件,编辑好就在“域/设置/消息”面板中设置后相应的消息文件就可以了。
在Serv-U的消息文件中,你可以使用一些变量,来显示服务器和用户当前的状态等参数。
在消息文件中Serv-U的消息变量在客户端登陆时就会自动替换成对应的信息。
相关变量的含义,你可以查阅Serv-U的帮助文件,这里就不多说了。
提请大家注意的是在使用当前硬盘剩余空间这个消息变量时,一定要将消息文件放在更改消息文件主目录或更改消息文件次目录处,才能正确显示当前的磁盘剩余空间。
4.远程管理FTP服务器
Serv-U支持FTP服务器的远程管理
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FTP 上传下载 完整 教程
![提示](https://static.bdocx.com/images/bang_tan.gif)