服务器

位置:IT落伍者 >> 服务器 >> 浏览文章

Windows中IIS内FTP服务器高级配置


发布日期:2023年06月08日
 
Windows中IIS内FTP服务器高级配置

提到FTP服务器可能大家都会想到ServUvsFTP等软件其实微软内置在IIS里的FTP服务已经够用不信请往下看

实现对多用户的管理

首先需要取消站点属性/允许匿名连接如图

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

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

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

小提示

客户端修改FTP账户密码的方法

在命令提示符下输入

FTP

输入用户名

输入密码

输入quote site pswd 旧密码 新密码

本方法优点结合NTFS权限以及磁盘限额能很好地实现多用户的多样化管理

本方法缺点由于FTP用户密码是以明文的方式在网络上传输所以不太安全遗憾的是IIS内置的FTP服务并不支持SSL这一点比不上ServU

实现ServU中的链接功能

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

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

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

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

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

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

tree /f /a d: >d:FTPtxt

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

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

tree /f /a d: >d:FTPnewtxt

fc /L d:FTPtxt d:FTPnewtxt >d:FTP更新列表txt

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

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

tree /f /a d: >d:FTPnewtxt

fc /L d:FTPtxt d:FTPnewtxt >d:FTP更新列表txt

echo 更新时间>> d:FTP更新列表txt

date /t >> d:FTP更新列表txt

time /t >> d:FTP更新列表txt

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

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

上一篇:服务器秘诀: 通过六或八部服务器最佳化 Windows 2000 Active Directory

下一篇:服务器磁盘资源合理分配经验谈(图)