创建与管理FTP服务FTP简介安装与测试FTP站点配置FTP服务器创建用户隔离的FTP站点本章要点11.1FTP简介FTP(FileTransportProtocol,文件传输协议)用于实现客户端与服务器之间的文件传输,尽管Web也可以提供文件下载服务,但是FTP服务的效率更高,对权限控制更为严格,因此,仍然被广泛应用于Internet/Intranet客户提供文件下载服务,同时也是最为安全的Web网站内容更新手段。FTP最初与服务一起被列为因特网的三大应用,可见其在网络应用中的地位举足轻重。11.1FTP简介FTP有两个意思,其中一个指文件传输服务,FTP提供交互式的访问,用来在远程主机与本地主机之间或两台远程主机之间传输文件。另一个意思是指文件传输协议,是Internet上使用最广泛的文件传输协议,它使用客户端/服务器模式,用户通过一个支持FTP协议的客户端程序,连接到在远程主机上的FTP服务器程序,用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户端。Internet是一个非常复杂的计算机环境,有PC,有工作站,有MAC,有大型机,这些计算机运行不同的操作系统,有运行Unix的服务器,也有运行Dos、Windows的PC机和运行MacOS的苹果机等,要实现传输文件,并不是一件容易的事。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守FTP协议,这样任何两台Internet主机之间可通过FTP复制拷贝文件。FTP协议11.1FTP简介在FTP的使用当中,用户经常遇到两个概念:“下载”(Download)和“上传”(Upload)。“下载”文件就是从远程主机拷贝文件至自己的计算机上,“上传”文件就是将文件从自己的计算机中拷贝至远程主机上,用Internet语言来说,用户可通过客户端程序向(从)远程主机上传(下载)文件。在Internet上有两类FTP服务器:一类是普通的FTP服务器,连接到这种FTP服务器上时,用户必须具有合法的用户名和口令。另一类是匿名FTP服务器,所谓匿名FTP,是指在访问远程计算机时,不需要账户或口令就能访问许多文件、信息资源,用户不需要经过注册就可以与它连接,并且进行下载和上载文件的操作,通常这种访问限制在公共目录下。系统管理员建立了一个特殊的用户ID,名为anonymous,Internet上的任何人在任何地方都可使用该用户ID。FTP协议11.1FTP简介当远程主机提供匿名FTP服务时,会指定某些目录向公众开放,允许匿名存取。系统中的其余目录则处于隐匿状态。作为一种安全措施,大多数匿名FTP主机都允许用户从其下载文件,而不允许用户向其上载文件,也就是说,用户可将匿名FTP主机上的所有文件全部拷贝到自己的计算机上,但不能将自己计算机上的任何一个文件拷贝至匿名FTP主机上。即使有些匿名FTP主机确实允许用户上载文件,用户也只能将文件上载至某一指定上载目录中。随后,系统管理员会去检查这些文件,他会将这些文件移至另一个公共下载目录中,供其它用户下载,利用这种方式,远程主机的用户得到了保护,避免了有人上载有问题的文件。FTP协议11.1FTP简介FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作系统下使用FTP,都会遇到大量的FTP内部命令。熟悉并灵活应用FTP的内部命令,可以大大方便使用者,并收到事半功倍之效。FTP命令连接成功,系统将提示用户输入用户名及口令:User:(输入合法的用户名或者anonymous);Password:(输入合法的口令,若以anonymous方式登录,一般不用口令)。进入连接的FTP站点后,用户就可以进行相应的文件传输操作了,FTP命令有其中一些重要的命令如下。FTP命令11.1FTP简介(1)help、?、rhelphelp显示LOCAL端本地端)的命令说明,若不接受则显示所有可用命令;?相当于help,例如?cd;rhelp同help,只是它用来显示REMOTE端(远程端)的命令说明。(2)ascii、binary、image、typeascii切换传输模式为文字模式;binary切换传输模式为二进制模式;image相当于binary;type用于更改或显示目前传输模式。FTP命令11.1FTP简介(1)help、?、rhelphelp显示LOCAL端本地端)的命令说明,若不接受则显示所有可用命令;?相当于help,例如?cd;rhelp同help,只是它用来显示REMOTE端(远程端)的命令说明。(2)ascii、binary、image、typeascii切换传输模式为文字模式;binary切换传输模式为二进制模式;image相当于binary;type用于更改或显示目前传输模式。FTP命令11.1FTP简介(3)bye、quitbye退出FTP服务器;quit相当于bye。(4)cd、cdup、lcd、pwd、!cd改变当前工作目录;cdup回到上一层目录,相当于“cd..”;lcd用于更改或显示LOCAL端的工作目录;pwd显示目前的工作目录(REMOTE端);!用于执行外壳命令,例如“!ls”。FTP命令11.1FTP简介(5)delete、mdelete、renamedelete删除REMOTE端的文件:mdelete批量删除文件;rename更改REMOTE端的文件名。(6)get、mget、put、mput、recv、sendget下载文件;mget批量下载文件;put上传文件;input批量上传文件;recv相当于get;send相当于put。FTP命令11.1FTP简介(7)hash、verbose、status、bellhash当有数据传送时,显示#号,每一个#号表示传送了1024B或8192b:verbose切换所有文件传输过程的显示;status显示目前的一些参数;bell当指令做完时会发出叫声。(8)1s、dir、mls、mdir、mkdir、rmdir1s有点像Unix下的1s(1ist)命令;dir显示目录与文件;mls只是将远端某目录下的文件存于LOCAL;mdir相当于mls;mkdir像DOS下的md(创建子目录)一样;rmdir像DOS下的rd(删除子目录)一样。FTP命令11.1FTP简介(9)open、close、disconnect、useropen连接某个远端FTP服务器;close关闭目前的连接;disconnect相当于close;user再输入一次用户名和口令(有点像Linux下的su)。当执行不同的命令时,会发现FTP服务器返回一组数字,每组数字代表不同的信息,详细表11-1所示,这种错误跟HTTP协议返回的数字类似,大致分为以下几种情况:1开头的三位数字--连接状态2开头的三位数字--成功3开头的三位数字--权限问题4开头的三位数字--文件问题5开头的三位数字--服务器问题。FTP命令11.1FTP简介表11-1访问FTP服务器命令的返回值及含义返回值含义返回值含义110重新启动标志回应332需要登陆的账户120服务在NNN时间内可用350对被请求文件的操作需要进一步更多的信息125数据连接已经打开,开始传送数据421服务不可用,控制连接关闭150文件状态正确,正在打开数据连接425打开数据连接失败200命令执行正常结束426连接关闭,传送中止202命令未执行,此站点不支持此命令450对被请求文件的操作未被执行211系统状态或系统帮助信息回应451请求的操作中止。212目录状态信息452请求的操作没有被执行213文件状态信息500语法错误,不可识别的命令214帮助信息501参数错误导致的语法错误215NAME系统类型502命令未被执行220新连接的用户的服务已就绪503命令的次序错误。221控制连接关闭504由于参数错误,命令未被执行225数据连接已打开,当前没传输进程530没有登录226正在关闭数据连接532存储文件需要账户信息227进入被动模式550请求操作未被执行,文件不可用230用户已登入551请求操作中止,页面类型未知250被请求文件操作成功完成552对请求文件的操作中止257路径已建立553请求操作未被执行331用户名存在,需要输入密码11.2安装与测试FTP站点WindowsServer2003提供的IIS6.0服务器中内嵌了FTP服务器软件,但是默认安装的情况下,FTP服务器软件是没有安装的,需要管理员手动进行安装。具体的安装步骤在前面的章节IIS的安装中已经阐明,这里不再赘述。但是值得强调的是在“Internet信息服务(IIS)”对话框的列表框中,必须选中“文件传输协议(FTP)服务”复选框,如图11-1所示。安装完成后,可以通过IIS管理器来管理FTP站点。如图11-2所示,从图中可以看出已经有一个“默认FTP站点”。FTP服务器安装成功后,可以测试默认FTP站点是否可以正常运行。以ftp.cuteftp.com站点为例,在其它计算机上采用以下三种方式来连接FTP站点:11.2安装与测试FTP站点图11-1选中“文件传输协议(FTP)服务”复选框图11-2默认FTP站点窗口11.2安装与测试FTP站点1、FTP程序操作如下:打开DOS命令提示符窗口,输入命令:ftpftp.cuteftp.com,然后根据屏幕上的信息提示,在User(ftp.cuteftp.com:(none))处输入匿名账户anonymous,Password处输入电子邮件账户或直接按回车键即可,也可以用“?”查看可供使用的命令。屏幕上的信息如下:MicrosoftWindows[版本5.2.3790](C)版权所有1985-2003MicrosoftCorp.C:\DocumentsandSettings\Administratorcd\C:\ftpftp.cuteftp.comConnectedtoftp.cuteftp.com.220GlobalSCAPESecureFTPServer(DOWNLOADER2)User(ftp.cuteftp.com:(none)):anonymous331Passwordrequiredforanonymous.Password:230LoginOK.Proceed.ftp11.2安装与测试FTP站点2、利用浏览器访问FTP站点Microsoft的InternetExplorer和Netscape的Navigator也都将FTP功能集成到浏览器中,可以在浏览器地址栏输入一个FTP地址(如)进行FTP匿名登录,如图11-3所示,这是最简单的访问方法。3、利用FTP客户端软件访问FTP站点FTP客户端软件以图形窗口的形式访问FTP服务器,操作非常方便,不像字符窗口的FTP的命令复杂、繁多。目前有很多很好的FTP客户端软件,比较著名软件主要有CuteFTP、LeapFTP、FlashFXP等。如图11-4所示,就是利用CuteFTP软件连接到ftp.cuteftp.com这个FTP站点,操作窗口与windows的资源管理器相似。11.2安装与测试FTP站点图11-3利用浏览器访问FTP站点图11-4利用FTP客户端软件访问FTP站点11.3配置FTP服务器IIS安装完成后,系统会自动建立一个“默认FTP站点”,可以直接利用它来作为自己的FTP站点,或者自己新建立一个FTP站点。本节将利用“默认FTP站点”(IP地址:192.168.1.7)来说明FTP站点的配置。1、主目录与目录格式列表计算机上每个FTP站点都必须有自己的主目录,可以设定FTP站点的主目录。选择“Internet信息服务管理器”→“FTP站点”→“默认FTP站点”选项,右击,选择“属性”