发布隔离的 FTP 站点 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

当用户连接默认FTP站点时,不论他们是利用匿名帐户,还是利用正式的帐户来登陆FTP站点,都将被直接转向到主文件夹,访问主文件夹内的文件。
Windows server 2003
IIS添加了“FTP用户隔离的功能,它可以让每一个用户都各自拥有专用的文件夹,当用户登陆FTP站点时,会被导向到其所属的文件夹,而且不可以切换到其他用户的文件夹。

您必须在创建FTP站点时就决定是否要启用“FTP用户隔离的功能,因为FTP站点创建完成后就不能更改了。在您创建FTP站点时,IIS允许您选用以下3种模式来创建FTP站点:

(1)不隔离用户 当用户来连接此类型的FTP站点时,他们都将被直接导向到同一个文件夹,也就是被导向到整个FTP站点的主目录。

(2)隔离用户 您必须在FTP站点的主目录之下,为每一个用户创建一个专用的子文件夹,而且子文件夹的名称必须与用户的登录帐户名称相同,这个子文件夹就是该用户的主目录。当用户登录此FTP站点时,将自动被导向到该用户的主目录内,而且无权限切换到其他用户的主目录

(3)Active Directory隔离用户 用户必须利用域用户帐户来连接此类型的FTP站点,而您必须在Active Directory的用户帐户内指定其专用的主目录,这个主目录可以位于FTP站点内,也可以位于网络上的其他计算机内。当用户登录此FTP站点时,将自动被导向到该用户的主目录内,而且无权切换到其他用户的主目录。

一、创建隔离用户FTP站点

(1)创建主目录

我们将在F磁盘驱动器下,创建一个名称为FTP的文件夹,作为新FTP站点的主目录。您还必须在此主目录之下,为用户另外创建他们专属的用户主目录。请在FTP主目录之下创建以下的文件夹结构LocalUser\连接为 LocalUser文件夹是为本机用户所创建的,而连接为是本机用户的帐户名称,请为每一位需要登陆此FTP站点的用户创建一个文件夹。

LocalUser\Public Public文件夹是供利用anonymous帐户匿名登录FTP站点的用户所创建的文件夹。用户利用匿名登录FTP站点时,他就会被导向到此公用的文件夹。

域名称\连接为 如果用户是利用域用户帐户来登录FTP站点,则请为每一个域创建一个文件夹,然后在文件夹下为每一个需要登陆FTP站点的用户,各创建一个专用的文件夹。当域用户利用其帐户登陆FTP站点时,他就会被导向到与其帐户名称同名的专用文件夹。

(2)创建隔离用户的FTP站点

步骤1 请到IIS计算机上打开“IIS管理器,选择新建”?“FTP站点

步骤2 输入此站点的说明文字,然后设置端口号

步骤3 选择隔离用户

步骤4 请选择FTP站点主目录所对应的文件夹

步骤5 设置FTP站点访问权限

步骤6 完成

(3)连接FTP站点

二、创建Active Directory隔离用户FTP站点

FTP站点本身不需要主目录,但是您必须为每一个用户创建一个专用的用户主目录。

(1)创建域用户的主目录

您必须为每一个需要连接到Active Directory隔离用户FTP站点的域用户,分别创建一个专用的用户主目录,这个主目录也可以被创建在其他计算机中的共享文件夹内。

假设要在另外一台计算机ZYP内,创建一个共享文件夹,其名称为zyp,然后在此文件夹下,分别为需要连接到FTP站点的域用户各创建一个子文件夹,这个子文件夹就是该用户的主目录。

(2)Active Directory 数据库中设置用户的主目录

Windows Server 2003域的Active Directory数据库,其用户帐户内有两个用来支持Active Directory隔离用户FTP站点的属性:分别是FTPRootFTPDir

FTPRoot 用来指定用户主目录所在地的根目录

FTPDir 用来指定前述根目录内的文件夹。

您可以利用以下方法,来设置拥护的FTPRootFTPDir属性:

运行iisftp.exe 程序 例如要将域用户tom 的主目录指定到 \\192.168.1.1\51cto\tec文件夹,则输入以下两个命令

Iisftp /setadprop tom ftproot \\192.168.1.1\51cto

Iisftp /setadprop tom ftpdir tom

其中第一个命令用来设置FTPRoot的网络路径,第二个命令用来设置FTPDir相对文件夹路径。您也可以利用以下两个命令:

Iisftp /getadprop tom ftproot

Iisftp /getadprop tom ftpdir

来查询用户的主目录。

(3) 创建一个让FTP站点可以读取用户属性的域用户帐户

FTP 站点必须能够读取位于Active Directory内的域用户帐户的FTPRootFTPDir两个属性,才能够得知该用户主目录的位置,因此我们必须事先为FTP站点创建一个有权限读取这两个属性的域用户帐户备用。

步骤1 Active Directory内的任何一个区内,选择委派控制

步骤2 添加用户

步骤3 赋予读取所有用户信息

步骤4 完成

(4)创建Active Directory隔离用户FTP站点

步骤1 请到IIS计算机上打开“IIS管理器,选择新建”?“FTP站点

步骤2 输入此站点的说明文字,然后设置端口号

步骤3 选择Active Directory隔离用户

步骤4 请选择用来读取Active Directory的用户,并输入密码,FTP会利用此帐户来读取登陆者的FTPRootFTPDir属性。用户登陆FTP站点时,若未输入域名称,则将其送到图中默认域的域控制器来检查用户的身份。

步骤5 设置FTP站点访问权限

步骤6 完成

(5)连接FTP站点

下面是具体的实验过程:

实验拓扑如下:

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

 

一、 基于目录的隔离:

二、 基于活动目录的隔离:

两种方法:在两种不同的工作环境中 , 为管理员提供选择。下面我们一起学习一下:

一、基于目录的隔离

首先我们在 ftp 服务器上创建一个文件夹命名为 ftpsite

ftpsite 下再建两个文件夹分别为 localuser( 本地用户 ) itet (和当前域名保持一致)

locsluser 下再建二个和用户同名的文件夹,再建一个 public (公共的文件夹,匿名者将访问到这个文件夹)

user1 文件夹下再建一文档:命名为 user1_berlin.txt( 为下面我们访问到这个文件夹的标志,下面我们访问时出现下面图面,证明我们来到的时 user1 这个文件夹下 ) 其它两个文件也用同样方法建一个自己的标志:好区分:

itet 文件夹下也建两个文件夹:

也建个标志:

创建两个本地用户:如图

              进入用户和计算机:

                                                   
 
     选择新建用户

 

 
   再创建两个域用户:

   进入 Internet 信息服务管理器

   
 
  选择新建 ftp 站点

 
   来到 ftp 站点创建向导:点击下一步

Ip
 
  地址就默认:端口为 666 (避免和原来站点冲突)

 
  选择隔离用户:点击下一步

 
  路径:点击浏览

  选择我们创建的 ftpsite 文件夹

  权限为默认:

 
  如图创建完成:

 
  在 florence 上试试(注意别忘了端口为 666 )下图为匿名访问;来到 public 目录下

 
  我们用别的用户登录试试

  用 berlin 本地用户 user1 登录,你猜会看到 什么?继续往下看吧!

 
   哈哈!和我们想要的结果一样:如果不放心那就在用 user2 试试

如图 berlin 本地的用户 user2

 
  访问到的是属于自己的 ftp 站点

 
  我们再用域用户登录试试:如图是域中的 user1

User1
   按我们所希望的来到自己的站点

   
 
   基于目录隔离我们完成!下面介绍基于活动目录的隔离:

二、基于活动目录的隔离:

同样我们需要在 ftp 服务器上创建一个文件夹命名为 ftpsite2 并共享!

 
  在 ftpsite2 目录下再创建两个文件夹, sina 163

 
  在 sina 文件夹下再创建一个文档,和上面一样,做一个标志作用:

 
  在 163 文件夹下也用样:如图

 
   基于活动目录的隔离需要在活动目录里登记:但怎么登记呢?别急!我们继续往下看:

我们需要安装一个工具:安装文件在安装光盘的 support tools suptools.msi 如图

 
  双击打开:选择 I Agree (我同意)

 
  然后一路回车!完成

 

 
 
  然后运行 adsiedit.msc

 
  打开 Domain 然后打开 DC=itet,DC=com

 
  打开 CN=Users 找到 user1 user2

 
 
  右击选择属性

 
  找到 mslls-ftpdir(ftp 目录 ) mslls-ftjproot ftp 根)

 
  双击 mslls-ftjproot ,输入 \\berlin\ftpsite2

 
  双击 mslls-ftpdir ,输入 sina

User2
 
  如法炮制:

 
  新建 ftp 站点

 
   出现 ftp 创建向导

 
  描述为 ftpsite2

IP
 
  地址默认!端口为 8888 (也是为了避免冲突)

 
  这次:选择用 Active Directory 隔离用户

 
 
  用户名为 itet 域的 user1 密码就是 user1 用户的密码, Active Directory 域为 itet.com

 
 
  再重复输入密码

 
  权限为默认的:点击下一步:

 
  如图完成创建:

 
  在 florence 上访问试试:服务器拒绝匿名访问

  输入 itet\user1 和密码:登录试试

 
  看到这个图怎么样?有没有一种成就感啊!

 
  如果不放心就再用 user2 试试:

  看看结果 吧!

OK !!! 发布 ftp 隔离的两种方法我们介绍就到这了!