当前位置: 首页 > 图文教程 > 服务器 > Windows服务器 > Windows中IIS内FTP服务器高级配置图文教程

Windows服务器
制作Windows 2003操作系统Ghost文件
Windows 2003共享资源拒绝访问修复实录
轻松架设Windows 2003中Web服务器
用Windows 2003系统架设邮件服务器
如何在Windows 2003中得到登陆密码
Windows 2003实用技巧七则
Win 2003系统也玩图片收藏屏保
Win 2003操作系统四例精彩问答
Windows 2003操作系统优化技巧
Win 2003英文系统中玩转汉字
Win 2003的“远程桌面”
简化Windows 2003域控制器密码
远程如何启用Win 2003桌面
Win 2003两种自动登录的方法
Win 2003中打开DirectX加速
Win 2003分发功能给网管减负
Win 2003如何转换成PC版系统
XP的小游戏移植到Win2003
九招Win 2003系统设置小技巧
Win2003播放画面粗糙的解决策略

Windows服务器 中的 Windows中IIS内FTP服务器高级配置图文教程


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-04   浏览: 77 ::
收藏到网摘: n/a

提到FTP服务器,可能大家都会想到Serv-U、vs-FTP等软件,其实微软内置在IIS里的FTP服务已经够用,不信请往下看。
  实现对多用户的管理

  首先需要取消“站点属性/允许匿名连接”,如图1。


  接着进入“计算机管理/本地用户和组”,新建立一个组,这里建立为FTPuser,然后新建立一个用户FTP01,然后修改FTP01的属性,把它加入FTPuser组,去掉系统默认的users组。在NTFS格式分区下(这里为d盘)创建文件夹FTP01和FTP02,然后设置安全权限,如图2。


  同样设置文件夹FTP02的权限为FTP02完全控制,当然这里可以按照实际情况分配不同用户不同的权限。回到IIS管理器,选择一个FTP站点“新建/虚拟目录/下一步”在别名处输入FTP01,选择“下一步”,路径选择刚刚创建的FTP01目录,选择“下一步”,同样新建一个虚拟目录FTP02,路径指向FTP02目录。这里注意的是:别名和目录名以及用户名3个必须完全一致。

  测试一下:这里以IP为192.168.0.16为例,输入FTP://192.168.0.16,回车,提示输入用户和密码,输入FTP01及其密码,顺利进入,这时进入的只能是FTP01虚拟目录,可以上传一个文件,然后在服务器上查看一下是放置在哪个目录下就可判定了。同样,以FTP02登入,就进入了FTP02目录,用户被限制在自己的目录内不能进入他人目录,安全性还是有保障。如果用户需要能自己更改密码,则只需要在创建用户的时候,不选中图3所示的选项即可。


小提示:
  客户端修改FTP账户密码的方法:
  在命令提示符下输入:
    FTP 192.168.0.16
  输入用户名
  输入密码
  输入quote “site pswd 旧密码 新密码”
  本方法优点:结合NTFS权限以及磁盘限额能很好地实现多用户的多样化管理。
  本方法缺点:由于FTP用户密码是以明文的方式在网络上传输,所以不太安全,遗憾的是,IIS内置的FTP服务并不支持SSL,这一点比不上Serv-U。

  实现Serv-U中的链接功能

  这是利用路径解析原理实现的,算得上是MS-FTP的一个隐藏功能。首先在FTP站点根目录(这里为d盘)下创建一个文件夹,名为tools,在IIS管理器中,在FTP站点下创建一个虚拟目录,名为tools,路径指向f盘下的“工具”目录。注意这里的虚拟目录名必须和站点根目录下创建的文件夹名一致。

  在客户端登录,这时不能使用FTP01、FTP02登录了,因为他们登录进去后直接到了站点根目录下的对应子目录下了,同时不能向上回到站点根目录,所以只能另外创建新用户,这里我创建了一个FTP03用户,登录进去发现除了可看见FTP01、FTP02目录外,还有其他目录,但是前面设置了FTP01,FTP02目录的权限,所以FTP03并不能访问他们,只是知道这些目录的存在而已。点击tools目录,您会发现自动指向了服务器的f盘下“工具”目录。

  本方法优点:不用第三方工具实现了链接功能,在有多个驱动器可使用的情况下特别有用。如果是想链接到一个完整的分区,那么在站点根目录下创建一个文件夹,名字和驱动器号相同就可以了。

  本方法缺点:需要创建额外的用户,如果FTP01这类用户想浏览其他磁盘上的内容就很难了。

  自动更新FTP站点目录及文件列表

  Windows有一个很有用的命令tree在这里可以大显身手了。如果FTP站点根目录是d,我们只要创建一个批处理文件,内容如下
    tree /f /a d: >d:FTP.txt

  然后添加一个任务计划,每小时运行一次。值得注意的是,添加完一个任务后必须进行高级设置才行,如图4所示。


  这样设置好后,用户登录时可以先下载FTP.txt这个文件到本地看看是否有更新,这样可以节省用户一个目录一个目录去找更新的时间,尤其是网速较慢的情况下。对这个进行扩展一下,可以更节省用户的时间,还是得靠Windows另外一个有用的命令fc,编写如下批处理文件FTP更新.bat:
    tree /f /a d: >d:FTPnew.txt
    fc /L d:FTP.txt d:FTPnew.txt >d:FTP更新列表.txt

  然后运行一次前面编写得FTP.bat,再运行一次FTP更新.bat,这时可以查看FTP更新列表.txt了,如果有更新的话,会以*****开头*****结尾的形式指出哪个目录有更新,更新的文件名是什么都列出来了,是不是更一幕了然呢。用户只需要首先下载FTP更新列表.txt查看就可以了,当然用户已经浏览过这个FTP站点,第一次浏览下载FTP.txt就可以了,如果嫌FTPnew.txt这个文件不应该出现在站点根目录下,也可以在编辑命令时指向其他位置即可。

  如今在论坛上也见很多FTP列表,手工维护实在很麻烦,只要把FTP更新列表.txt放在一个Web路径下或专门为创建一个虚拟目录指向FTP更新列表.txt所在目录,那么我们就可以通过浏览器直接浏览这个文件,因为IE浏览器是可以直接解析txt文件的,所以不会提示下载。为了更好方便浏览者还可对FTP更新.bat进行补充,完整的FTP更新.bat内容如下:
    tree /f /a d: >d:FTPnew.txt
    fc /L d:FTP.txt d:FTPnew.txt >d:FTP更新列表.txt
    echo 更新时间>> d:FTP更新列表.txt
    date /t >> d:FTP更新列表.txt
    time /t >> d:FTP更新列表.txt

  然后添加一个计划任务,每小时执行一次这个批处理文件,这样浏览者不仅仅看到更新的内容,还知道更新的时间,下一次更新时间也可以自己推算出来了。如果经常登录这个FTP站点,还可以把这个地址加入收藏夹,不用登录FTP也能知道服务器是否有更新,有兴趣可访问http://test.yuanlin.cn/FTP列表更新.txt看看效果。

  上面所涉及到的工具都是Windows自带的,没有使用任何第三方工具,其实Windows还有很多地方值得我们去深挖。