Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1990233
  • 博文数量: 433
  • 博客积分: 918
  • 博客等级: 准尉
  • 技术积分: 3218
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-24 18:21
个人简介

你是不是暗恋我,那就给我发个消息呀,让我知道o(∩∩)o

文章分类

全部博文(433)

分类: LINUX

2015-12-15 17:18:51

http://blog.csdn.net/eagelangel/article/details/3071061

proftpd以完美的权限控制著称...所以这个教程的目的是让大家理解proftpd的权限设置的过程
拿我的music ftp来举例子了.
代码:

#在/usr/local/music这个目录中的权限设置

denygroup pubfxp

#上面的内容限制pubfxp这个组删除目录(RMD),删除文件(DEL),和执行chmod命令(SITE_CHMOD)

denyuser onlyup

#上面的内容限制onlyup这个用户,删除目录(RMD),删除文件(DEL),和执行chmod命令(SITE_CHMOD),上传(STOR),建目录(MKD),下载(RETR),重命名(RNTO)

denygroup read

#上面的内容限制read这个组,删除目录(RMD),重命名(RNTO),建目录(MKD),删除文件(DEL),和执行chmod命令(SITE_CHMOD)




#在/usr/local/music/80g_2/incoming中的权限设置

allowuser onlyup

#上面的内容允许onlyup这个用户,建立目录(MKD),上传(STOR)



#对"~/xishare/" ,除ftpuser1能上传外,其他用户只能下载。符合“~”表示用户的home目录。

   
     DenyAll
   
   AllowOverwrite on
   AllowRetrieveRestart on
   AllowStoreRestart on


   
     DenyUser !ftpuser1
   
   AllowStoreRestart on

#对"~/pub/" 可以(覆盖)上传、下载、创建目录,不能删除

   
     DenyAll
   
   AllowOverwrite on
   AllowRetrieveRestart on
   AllowStoreRestart on

#不允许Root用户访问ftp
RootLogin off
#设置如果shell为空时允许用户登录:
RequireValidShell off
#限制每个FTP用户在自己的目录下,不可查看上一级目录
DefaultRoot ~ 
AllowRetrieveRestart on #下载时,允许断点续传
AllowStoreRestart on #上传时,允许断点续传
ServerIdent off #屏蔽服务器版本信息
#最大尝试连接次数
MaxLoginAttempts 8
#日志文件位置
SystemLog /var/log/proftpd.log

ok来看看我为什么这样设置...
第一步..我先设置整个music目录的权限.禁止了onlyup这个用户在music目录的所有权限...
pubfxp这个组只有写,重命名,而没有删除的权限,read这个组只有读的权限..

第二步..我在80g_2/incoming中允许onlyup有写的权限...这个会覆盖掉music目录中对应的权限设置..但是其他没有说明的权限还是被禁止的..

这样就用很少的控制码达到权限控制的目的了..:)

proftpd的组设置功能非常好用...我通过mysql来做验证的...
只要在mysql的语句部分加一句
SQLGroupInfo groups groupname gid members


具体的组的内容是这样的范例..:)
PHP 代码:
groupname  gid  members   
read             99   ndvip,zg,HYD,ronor  

mysql的支持文档:

这里注意一下组的gid最好用一个系统存在的组..否则权限比较莫名的出错..偶在这里卡了一天时间...

另..调试proftpd的利器...在conf文件中加入
SQLLogFile /var/log/proftpd_sql_log

然后就是分析log了..hoho...


在proftpd的配置中,灵活使用limit可以配置出超凡的命令权限,一般包括如下命令: 
  CWD 改变当前目录 
  MKD/XMKD 新建目录 
  RNFR/RNTO 修改名称 
  DELE 删除文件 
  RMD/XRMD 删除目录 
  RETR 下载文件 
  STOR 上传文件 
  
  以下是可能使用的命令: 
  文件读写: RETR, SITE, SIZE, STAT WRITE 
  文件或目录读写: APPE, DELE, MKD, RMD, RNTO, STOR, XMKD, XRMD DIRS 
  目录读写: CDUP, CWD, LIST, MDTM, NLST, PWD, RNFR, XCUP, XCWD, XPWD 
  
  一般使用如下方式: 
        <Directory "预控制路径"> 
  <Limit 1控制命令 控制命令2 控制命令n> 
  DenyAll / AllowALL/DenyUser User/DenyGroup Group/Allowuser user user/AllowGroup group 
  </Limit> 
  </Directory>


阅读(2425) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~