1.安装
Windows xp默认安装时不安装IIS组件,需要手工添加安装。进入控制面板,找到“添加/删除程序”,打开后选择“添加/删除Windows组件”,在弹出的 “Windows组件向导”窗口中,将“internet信息服务(IIS)”项选中。在该选项前的“√”背景色是灰色的,这是因为Windows xp默认并不安装FTP服务组件。再点击右下角的“详细信息”,在弹出的“Internet信息服务(IIS)”窗口中,找到“文件传输协议(FTP)服务”,选中后确定即可。
安装完后需要重启。Windows NT/2000和Windows xp的安装方法相同。
2.设置
电脑重启后,FTP服务器就开始运行了,但还要进行一些设置。点击“开始→所有程序→管理工具→Internet信息服务”,进入“Internet信息服务”窗口后,找到“默认FTP站点”,右击鼠标,在弹出的右键菜单中选择“属性”。在“属性”中,我们可以设置FTP服务器的名称、IP、端口、访问账户、FTP目录位置、用户进入FTP时接收到的消息等。
1)FTP站点基本信息
进入“FTP站点”选项卡,其中的“描述”选项为该FTP站点的名称,用来称呼你的服务器,可以随意填,比如“我的小站”;“IP地址”为服务器的IP,系统默认为“ 全部未分配 ”,一般不须改动,但如果在下拉列表框中有两个或两个以上的IP地址时,最好指定为公网IP;“TCP端口”一般仍设为默认的21端口;“连接”选项用来设置允许同时连接服务器的用户最大连接数;“连接超时”用来设置一个等待时间,如果连接到服务器的用户在线的时间超过等待时间而没有任何操作,服务器就会自动断开与该用户的连接。
2)设置账户及其权限
很多FTP站点都要求用户输入用户名和密码才能登录,这个用户名和密码就叫账户。不同用户可使用相同的账户访问站点,同一个站点可设置多个账户,每个账户可拥有不同的权限,如有的可以上传和下载,而有的则只允许下载。
3)安全设定
进入“安全账户”选项卡,有“允许匿名连接”和“仅允许匿名连接”两项,默认为“允许匿名连接”,此时FTP服务器提供匿名登录。“仅允许匿名连接”是用来防止用户使用有管理权限的账户进行访问,选中后,即使是Administrator(管理员)账号也不能登录,FTP只能通过服务器进行“本地访问”来管理。至于“FTP站点操作员”选项,是用来添加或删除本FTP服务器具有一定权限的账户。IIS与其他专业的FTP服务器软件不同,它基于 windows用户账号进行账户管理,本身并不能随意设定FTP服务器允许访问的账户,要添加或删除允许访问的账户,必须先在操作系统自带的“管理工具” 中的“计算机管理”中去设置Windows用户账号,然后再通过“安全账户”选项卡中的“FTP站点操作员”选项添加或删除。但对于Windows 2000和Windows xp专业版,系统并不提供“FTP站点操作员”账户添加与删除功能,只提供Administrator一个管理账号。
图解Windowsxp—FTP服务器配置(cmd中ftp命令)
FTP是File Transport Protocol的简称,其作用是使连接到服务器上的客户可以在服务器和客户机间传输文件。除WWW服务外,FTP也算是使用最广泛的一种服务了。
FTP服务器配置
在此介绍一下利用IIS建立FTP服务器的方法。 (同WWW服务一样,IIS默认有一个默认的FTP站,因此你可以通过修改默认FTP站点来满足你的需要。)
在默认FTP站点上点右键如图:
输入描述:我爱计算机,设置IP地址:192.168.1.3,端口默认为21,一般不需要更改。
设置连接,同Web服务器一样注意启用日志纪录。
然后选中主目录对话框如图:
基本上按照上图的设置就可以了,指定目录的访问权限。一般选择读取,你也可以以后再指定访问权限,让管理员具体写入的权限,让一般文章者具有读取的权限。
在安全账户中修改账户信息,根据自己的需要修改,如下图:
允许匿名连接选项一定要填上。否则用户访问此站点时需要用户名和密码。默认状态下是可以允许匿名访问的。用户名为anonymous,密码为空。
定义用户访问FTP站点和退出站点时的信息以及最大连接数,如图:
当然大家也可以根据自己的需要和爱好来设置。
最后测试:(不通过浏览器,而是cmd中的ftp命令)
在运行中,打开cmd,然后输入 ftp 192.168.1.3(刚才设置的IP地址)回车,输入用户名anonymous。
然后回车,要求输入密码,因为密码为空,按回车即可。get 下载某一文件到本地文件夹。(日后为了网站的安全,可以设置禁止匿名访问,并加强密码,这里为了测试方便所以设置匿名用户)
在cmd中ftp命令很多,常用的主要有:
ftp192.168.1.3 登陆ftp;
dir 显示远程主机目录;
cd remote-dir:进入远程主机目录;
help[cmd]:显示ftp内部命令cmd的帮助信息,如:help get。
getremote-file[local-file]: 将远程主机的文件remote-file传至本地硬盘的local-file(本地文件夹)。
putlocal-file[remote-file]:将本地文件local-file传送至远程主机。
quit:同bye,退出ftp会话。
………………………………………………………………………………………………………………
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]:删除远程主机文件。
30.mdir remote-files local-file:与dir类似,但可指定多个远程文件,如: mdir *.o.*.zipoutfile 。
31.mget remote-files:传输多个远程文件。
32.mkdir dir-name:在远程主机中建一目录。
33.mls remote-file local-file:同nlist,但可指定多个文件名。
34.mode[modename]:将文件传输方式设置为modename, 缺省为stream方式。
35.modtime file-name:显示远程主机文件的最后修改时间。
36.mput local-file:将多个文件传输至远程主机。
37.newer file-name: 如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。
38.nlist[remote-dir][local-file]:显示远程主机目录的文件清单,并存入本地硬盘的local-file。
39.nmap[inpattern outpattern]:设置文件名映射机制, 使得文件传输时,文件中的某些字符相互转换,如:nmap $1.$2.$3[$1,$2].[$2,$3],则传输文件a1.a2.a3时,文件名变为a1,a2。该命令特别适用于远程主机为非UNIX
机的情况。
40.ntrans[inchars[outchars]]:设置文件名字符的翻译机制,如ntrans1R,则文件名LLL将变为RRR。
41.open host[port]:建立指定ftp服务器连接,可指定连接端口。
42.passive:进入被动传输方式。
43.prompt:设置多个文件传输时的交互提示。
44.proxy ftp-cmd:在次要控制连接中,执行一条ftp命令, 该命令允许连接两个ftp服务器,以在两个服务器间传输文件。第一条ftp命令必须为open,以首先建立两个服务器间的连接。
45.put local-file[remote-file]:将本地文件local-file传送至远程主机。
46.pwd:显示远程主机的当前工作目录。
47.quit:同bye,退出ftp会话。
48.quote arg1,arg2...:将参数逐字发至远程ftp服务器,如:quote syst.
49.recv remote-file[local-file]:同get。
50.reget remote-file[local-file]:类似于get,但若local-file存在,则从上次传输中断处续传。
51.rhelp[cmd-name]:请求获得远程主机的帮助。
52.rstatus[file-name]:若未指定文件名,则显示远程主机的状态,否则显示文件状态。
53.rename[from][to]:更改远程主机文件名。
54.reset:清除回答队列。
55.restart marker:从指定的标志marker处,重新开始get或put,如:restart 130。
56.rmdir dir-name:删除远程主机目录。
57.runique:设置文件名唯一性存储,若文件存在,则在原文件后加后缀..1,.2等。
58.send local-file[remote-file]:同put。
59.sendport:设置PORT命令的使用。
60.site arg1,arg2...:将参数作为SITE命令逐字发送至远程ftp主机。
61.size file-name:显示远程主机文件大小,如:siteidle 7200。
62.status:显示当前ftp状态。
63.struct[struct-name]:将文件传输结构设置为struct-name, 缺省时使用stream结构。
64.sunique:将远程主机文件名存储设置为唯一(与runique对应)。
65.system:显示远程主机的操作系统类型。
66.tenex:将文件传输类型设置为TENEX机的所需的类型。
67.tick:设置传输时的字节计数器。
68.trace:设置包跟踪。
69.type[type-name]:设置文件传输类型为type-name,缺省为ascii,如:type binary,设置二进制传输方式。
70.umask[newmask]:将远程服务器的缺省umask设置为newmask,如:umask 3。
71.user user-name[password][account]:向远程主机表明自己的身份,需要口令时,必须输入口令,如:user anonymous my@email。
72.verbose:同命令行的-v参数,即设置详尽报告方式,ftp服务器的所有响应都将显示给用户,缺省为on.
73.?[cmd]:同help.