老鸟rhel5/centos5服务器架设笔记:vsftpd的配置

阅读更多
vsftpd的配置指南

vsftd的安装
默认vsftpd已经安装,如果没有安装到rhel5/centos5安装光盘安装vsftpd
启动vsftpd,
#service vsftpd start
如果让vsftpd开机启动
#chkconfig --level 35 vsftpd on

vsftp规划
ftp的权限是和目录的权限是结合在一起的,所以要想达到想要的效果,必须做好规划。
案例1:
要求:有1个pub目录可以用来匿名上传,匿名删除(相当于共享文件夹),但是也能匿名访问其他目录;
      local用户拥有/var/ftp/下的所有的权限,包括新建、删除目录、文件等。
     
规划: 新建管理组ftpmanager和一批本地用户(ftpuser, ....),这些本地用户属于ftpmanager组,同时也属于ftp组,而ftpmanager组对/var/ftp/目录拥有所有权限(除了子目录pub外);
      在/var/ftp目录下新建pub目录,ftp组对pub目录拥有所有权限。

操作
      新建一个组ftpmanager和一批local用户
#groupadd ftpmanager
#useradd -g ftpmanager -G ftp -s /sbin/nolog ftpuser

把/var/ftp的目录的所有权赋给ftpuser和组ftpmanager
#chown -R ftpuser.ftpmanager /var/ftp
#chmod 775 -R /var/ftp

我们为匿名用户创建一个目录pub
#cd /var/ftp
#mkdir pub
#chown -R ftp.ftp /var/ftp/pub
#chmod 775 /var/ftp/pub

配置vsftpd
修改配置文件/etc/vsftpd/vsftpd.conf
让匿名用户访问并上传,我们
anonymous_enable=YES
anon_umask=002 //上传的东西本组拥有所有的权限,以便于删除
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=yes

本地用户创建文件的权限
local_umask=002 //同组的人拥有所有的权限

最后修改
userlist_enable=yes
userlist_deny=yes

local_root=/var/ftp //把local用户限制到/var/ftp目录下

案例2:
用户要求:有1个目录可以用来匿名上传,匿名删除(相当于共享文件夹),但是也能匿名访问其他目录
  local用户有对自己的文件夹有读写权限,对别的用户文件夹以及上传的文件无改写、删除权限,我们规划如下:
规划: local用户属于ftp组,/var/ftp目录的所有者为root,在/var/ftp新建一些文件夹,这些文件夹的所有权归某个local用户所有
      在/var/ftp目录下新建pub目录,ftp用户对pub目录拥有所有权限。

操作
新建一个ftpuser用户
#useradd -g ftp -s /sbin/nolog ftpuser

把/var/ftp的目录的所有权赋给root
#chown -R root.root /var/ftp
#chmod 755 -R /var/ftp

我们为匿名用户创建一个目录pub
#cd /var/ftp
#mkdir pub
#chown -R ftp.ftp /var/ftp/pub
#chmod 775 /var/ftp/pub

我们为ftpuser创建1个目录
#cd /var/ftp
#mkdir userdir
#chown -R ftpuser.ftp /var/ftp/userdir
#chmod 755 /var/ftp/userdir

配置vsftpd
修改配置文件/etc/vsftpd/vsftpd.conf
让匿名用户访问并上传,我们
anonymous_enable=YES
anon_umask=002 //同组的人拥有所有权限,以便于删除
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=yes

本地用户创建文件权限
local_umask=022 //创建者拥有所有的权限

最后修改
userlist_enable=yes
userlist_deny=yes

local_root=/var/ftp //把local用户限制到/var/ftp目录下





你可能感兴趣的:(配置管理)