当前位置: 首页 > news >正文

IIS6.0下创建用户隔离模式FTP站点

为了方便大家使用,所建立的FTP站点不仅允许匿名用户访问,而且对主目录启用了“读取”和“写入”的权限。这样一来任何人都可以没有约束地任意读写,难免出现一团糟的情况。如果您使用IIS 6.0,只需创建一个‘用户隔离’的FTP站点就可以有效解决此问题。

“隔离用户”是IIS 6.0中包含的FTP组件的一项新增功能。配置成“用户隔离”模式的FTP站点可以使用户登录后直接进入属于该用户的目录中,且该用户不能查看或修改其他用户的目录。

 创建用户账户

首先在FTP站点所在的Windows Server 2003服务器中为FTP用户创建了一些用户账户,以便他们使用这些账户登录FTP站点。操作步骤如下所述:

第1步 在桌面上用鼠标右键单击“我的电脑”,在弹出的快捷菜单中执行“管理”命令。

第2步 打开“计算机管理”窗口,在左窗格中展开“本地用户和组”目录。然后用鼠标右键单击所展开目录中的“用户”文件夹,在弹出的快捷菜单中执行“新用户”命令,打开“新用户”对话框。

第3步 在相关编辑框中键入用户名(如“zs”)和密码(如“bxjyw”),取消“用户下次登录时须更该密码”选项并勾选“用户不能更该密码”和“密码永不过期”两项,最后单击“创建”按钮(如图1)。

第4步 这时会弹出下一个“新用户”对话框,根据需要添加若干个用户。创建完毕后单击“关闭”按钮即可。


规划目录结构

  创建了一些用户账户后,开始了另一项关键性操作:规划文件夹结构(说白了就是创建一些文件夹)。

为什么说创建文件夹的操作很关键呢,这是因为创建“用户隔离”模式的FTP站点对文件夹的名称和结构有一定的要求。首先必须在NTFS分区中创建一个文件夹作为FTP站点的主目录(如“vhost”),然后在“vhost”文件夹下创建一个名为“LocalUser”的子文件夹,最后在“LocalUser”文件夹下创建若干个跟用户账户一一对应的个人文件夹。

另外,如果想允许用户使用匿名方式登录“用户隔离”模式的FTP站点,则必须在“LocalUser”文件夹下面创建一个名为“Public”的文件夹。这样匿名用户登录以后即可进入“Public”文件夹中进行读写操作。

提示:FTP站点主目录下的子文件夹名称必须为“LocalUser”,且在其下创建的用户文件夹必须跟相关的用户账户使用完全相同的名称,否则将无法使用该用户账户登录。


创建FTP站点

至此所有的准备工作都完成了,接下来是读者最为关心的核心环节:创建“用户隔离”模式的FTP站点。具体设置步骤如下所述:

第1步 依次单击“开始/管理工具/Internet 信息服务(IIS)管理器”,打开“Internet 信息服务(IIS)管理器”窗口。在左窗格中用鼠标右键单击“FTP站点”选项,在弹出的快捷菜单中执行“新建/FTP站点”命令,打开“FTP站点创建向导”向导页,并单击“下一步”按钮。


第2步 在打开的“FTP站点描述”向导页中键入一行描述性语言(如“CceFTP”),并单击“下一步”按钮。




第3步 打开“IP地址和端口设置”向导页,在“输入此FTP站点使用的IP地址”下拉菜单中选中一个用于访问该FTP站点的IP地址。端口保持默认的“21”,单击“下一步”按钮。


第4步 在打开的“FTP用户隔离”向导页中点选“隔离用户”单选框,并单击“下一步”按钮。


第5步 打开“FTP站点主目录”向导页,单击“浏览”按钮找到事先创建的“CceFTP”文件夹,并依次单击“确定/下一步”按钮。




第6步 在打开的“FTP站点访问权限”向导页中勾选“写入”复选框,然后依次单击“下一步/完成”按钮完成创建。



登录FTP站点

  站点创建完成了,迫不及待地来到一台电脑旁,以用户“zs”的身份成功登录,并在该目录中新建了一个文档。为了验证自己所建立的文档是否真在名为“zs”的文件夹中,笔者还特意打开Windows Server 2008服务器中“LocalUser”文件夹下的“zs”文件夹,在这里果然看到了自己刚刚建立的文档(zs.txt)。毫无疑问,设置是成功的。





提示:用户登录分为两种情况:如果以匿名用户的身份登录,则登录成功以后只能在“Public”目录中进行读写操作;如果是以某一有效用户的身份登录,则该用户只能在属于自己的目录中进行读写操作,且无法看到其他用户的目录和“Public”目录。

转载于:https://www.cnblogs.com/top5/archive/2010/06/07/1752944.html

相关文章:

  • Hadoop如何迎击大数据分析的挑战
  • [Samba] 一路走来
  • 联动优势:PureData数据中心案例分享
  • MySQL Connector C/C++ for VS2010
  • SaaS课堂:外贸企业如何选择适合自己的软件
  • Java多线程中wait语句的具体使用技巧
  • Google Chrome - 云计算时代的浏览器
  • 问题003:JDK文件夹下的bin有什么作用?javac.exe和java.exe双击后为什么一闪而过,没了?...
  • js javaScript中String添加replaceAll 方法
  • IBM Platform Computing:云计算与大数据的智慧粘合剂
  • document.compatMode 记录
  • 基于语音应用的10项最佳实践
  • maven maven-war-plugin 的配置【转】
  • 云计算平台概览
  • [转]SAP ECC 6.0与R/3的区别
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • javascript从右向左截取指定位数字符的3种方法
  • JSDuck 与 AngularJS 融合技巧
  • JS正则表达式精简教程(JavaScript RegExp 对象)
  • JS字符串转数字方法总结
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • sublime配置文件
  • Web设计流程优化:网页效果图设计新思路
  • 笨办法学C 练习34:动态数组
  • 给初学者:JavaScript 中数组操作注意点
  • 坑!为什么View.startAnimation不起作用?
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 什么软件可以提取视频中的音频制作成手机铃声
  • 微信支付JSAPI,实测!终极方案
  • 小程序测试方案初探
  • 一文看透浏览器架构
  • 用jQuery怎么做到前后端分离
  • 智能合约开发环境搭建及Hello World合约
  • AI算硅基生命吗,为什么?
  • postgresql行列转换函数
  • python最赚钱的4个方向,你最心动的是哪个?
  • 阿里云ACE认证学习知识点梳理
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​LeetCode解法汇总2304. 网格中的最小路径代价
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • #前后端分离# 头条发布系统
  • #我与Java虚拟机的故事#连载03:面试过的百度,滴滴,快手都问了这些问题
  • #我与Java虚拟机的故事#连载05:Java虚拟机的修炼之道
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • (2)MFC+openGL单文档框架glFrame
  • (Mirage系列之二)VMware Horizon Mirage的经典用户用例及真实案例分析
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (二)Eureka服务搭建,服务注册,服务发现
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (原創) 未来三学期想要修的课 (日記)
  • .NET CLR Hosting 简介