看看这篇文章,对你有用:



 2.配置文件结构分析  

  #全局设置

  设置项目1 参数1

  设置项目2 参数2  

  #某个目录的设置

  

  ...

  ...

    

  #关于匿名登陆的设置

  

  ...

  ...

  

  ...

  ...

  

    

  常用全局设置   

  DefaultRoot ~ # 限制每个FTP用户在自己的目录下,不可查看上一级目录   

  AllowRetrieveRestart on #下载时,允许断点续传   

  AllowStoreRestart on #上传时,允许断点续传   

  ServerIdent off #屏蔽服务器版本信息   

  TransferRate STOR RETR 速度(Kbytes/s) user 使用者 #设定用户传输速率   

  MaxHostsPerUser 1 #每个帐户最多允许来源ip为1个, 对防止ftp帐号还是比较有用的。   

  MaxClientsPerUser 1 #每个帐户在每个客户端最多可以同时登陆1次,可以防止多线程软件下载对服务器的破坏   

  MaxClientsPerHost 1 #同一个客户端只能最多1个帐号可以登陆   

  WtmpLog on #是否要把ftp记录在日志中,如果不想可以设置成off屏蔽掉log日志。   

  TimeoutIdle 600 #客户端idle时间设置,默认就是600秒   

  DisplayLogin welcome.msg #设置ftp登陆欢迎信息文件   

  RootLogin on #允许root用户登录,默认是不允许的,安全起见不推荐此选项。   

  欢迎词设置   

  关于欢迎文件的设置包含如下参数:   

  %T 目前的时间   

  %F 所在硬盘剩下的容量   

  %C 目前所在的目录   

  %R Client 端的主机名称   

  %L Server 端的主机名称   

  %U 使用者帐户名称  

  %M 最大允许连接人数   

  %N 目前的服务器连接人数   

  %E FTP服务器管理员的 email   

  %i 本次上传的文件数量  

  %o 本次下载的文件数量   

  %t 本次上传+下载的文件数量   

  知道这些参数,可以写出一个友好的欢迎语文件,例如:   

  欢迎您%U, 这是T-force的测试FTP服务器;

  目前时间是:%T;

  本服务器最多允许%M个用户连接数;

  目前服务器上已有%N个用户连接数;

  目前你所在的目录是%C;

  目录所在的硬盘还剩下%F字节。 

  anonymous 配置块   

  在配置文件中anonymous配置块是非常重要的一部分,全局帐户的权限配置一般都由它来控制,下面分析一个比较常见的例子  

  # A basic anonymous configuration,

  no upload directories.

  If you do not

  # want anonymous users,

  simply delete this entire

   section.

  

  #指定匿名用户登录目录

  User ftp

  #指定本块设置的用户

  Group ftp

  #指定本块设置的用户属组

  # We want clients to be able to login

  with "anonymous" as well as "ftp"

  UserAlias anonymous ftp

  #设定用户的别名

  AnonRequirePassword on

  #登陆需要密码

  # Limit the maximum number

  of anonymous logins

  MaxClients 10

  # We want 'welcome.msg' displayed

  at login, and '.message' displayed

  # in each newly chdired directory.

   DisplayLogin welcome.msg

   DisplayFirstChdir .message

  # Limit WRITE everywhere

  in the anonymous chroot

  

  

   DenyAll

  

  

   AllowAll

  

  

    

  anonymous配置块中的重点是通过Limit对指定目录进行比较详尽的权限管理,Limit的权限控制比较完整,通过不同的组合基本上可以做到各种复杂的权限控制,其控制项如下:   

  CMD:Change Working Directory 改变目录

  MKD:MaKe Directory 建立目录的权限

  RNFR: ReName FRom 更改目录名的权限

  DELE:DELEte 删除文件的权限

  RMD:ReMove Directory 删除目录的权限

  RETR:RETRieve 从服务端下载到客户端的权限

  STOR:STORe 从客户端上传到服务端的权限

  READ:可读的权限,不包括列目录的权限,

  相当于RETR,STAT等

  WRITE:写文件或者目录的权限,包括MKD和RMD

  DIRS:是否允许列目录,相当于LIST,

  NLST等权限,还是比较实用的  

  注:在测试是否可以下载时,不能用长度为0的空文件去测试,要用一个有内容的文件(文件大小不能为0k)。   

  针对上面这个Limit所应用的对象,又包括以下范围   

  AllowUser 针对某个用户允许的Limit

  DenyUser 针对某个用户禁止的Limit

  AllowGroup 针对某个用户组允许的Limit

  DenyGroup 针对某个用户组禁止的Limit

  AllowAll 针对所有用户组允许的Limit

  DenyAll 针对所有用户禁止的Limit