配置匿名上传vsftp服务器

在有些应用环境,需要建立一个ftp服务器能够接收匿名上传的文件,但不能被匿名下载,如设置一个专门用于交作业的服务器,
匿名上传自己的文件,避免了为每个用户建立用户名和密码的麻烦。不能被匿名下载避免了匿名用户查看其他用户的上传文件
(已交的作业)的问题。同时建立一个ftp管理员帐户,只能访问ftp根目录里的内容。


1.建立ftp管理员帐户

     在系统(这里是ubuntu9.10)里建立一个本地帐户xiajingftp,其home路径为/srv/ftp


2.配置vsftpd.conf

#anonymous_enable 允许匿名用户,缺省值为YES  
#    anonymous_enable=YES
#
#download_enable缺省为YES,如果为NO,所有人都不允许下载,这里要求管理者(老师)可以下载
#匿名用户(学生)上传的文件(作业)。所以不用改变缺省值。
#    download_enable=YES
#
#local_enable,允许本地用户登录,本地用户相对匿名用户有一些特权,所以开启本地用户,缺省为NO
    local_enable=YES

#

#write_enable缺省值为NO,因为要求上传,更改原设置

     write_enable=YES
#
#设置anon_upload_enable是关键,设为YES允许匿名用户上传文件,但write_enable也得设置为YES,

#而且匿名ftp用户对于上传的目的地有写的权利,缺省值是NO
    anon_upload_enable=YES
#
#anon_mkdir_write_enable的缺省值就是NO,不允许匿名用户建立文件夹
#    anon_mkdir_write_enable=NO
#
#anon_other_write_enable允许除了上载,建立文件夹外的删除和重命名操作。
#缺省为NO
#     anon_other_write_enable=NO
#
#anon_world_readable_only使得匿名用户只能下载具有**4属性(*代表0-7)的文件,也就是
#即使匿名用户有属于自己的文件但不是所有人可读的,那也不能下载。这正是
#我们需要的,因为匿名用户上传的文件具有700属性。缺省值为YES
#    anon_world_readable_only=YES
#
#chmod_enable使本地用户可以使用CHMOD命令,这使得管理者(老师)通过本地用户
#上传文件后,更改该文件为world readable(上传的文件初始没有该属性),这样
#所有的匿名用户(学生)就可以下载该文件,该文件可以为上机实验指导或作业题目等。
#缺省值为YES,不需要再设置
#
#chown_uploads使匿名上传的文件自动改变所有者为chown_username指定的用户名
#缺省值为NO,为了使管理者(老师)能下载上传的文件,而匿名用户不能下载(上传的
#文件都是owner readable,匿名用户上传的文件也是,不具有**4属性(world_readable),
#匿名用户不能下载自己上传的文件(因为anon_world_readable_only为YES),
#匿名用户的文件属于ftp用户,本地用户如xiajing对属于ftp用户且不具备**4属性的
#文件不能下载,所以要更改owner),需要更改缺省设置,
  chown_uploads=YES
#
#chown_username指定匿名用上传的文件自动改变所有者的用户名,这里指定为管理者xiajingftp
#,缺省值为root
  chown_username=xiajingftp

#anon_root指定匿名用户登录后的根目录对应的文件夹,如/srv/ftp
     

#chroot_local_user如果为YES则使本地用户限制在Home里,这里要求本地用户能访问匿名用户
#的根目录,所以要么匿名用户的根目录设在home里,要么本地用户能访问home以外的文件夹。
#这里用缺省值NO

 

# chroot_list_enable对chroot的用户进行管理,缺省值为NO。
chroot_list_enable=YES


# chroot_list_file其中的用户在chroot_local_user为NO时chroot,这里在vsftpd.chroot_list文件

#里添加xiajingftp用户,用户 xiajingftp的home为/srv/ftp,这样 该用户只能访问/srv/ftp
chroot_list_file=/etc/vsftpd.chroot_list

 

#delete_failed_uploads,删除上传失败的文件,缺省值为NO,这里更改为
 delete_failed_uploads=YES


2.建立上传文件夹

要使匿名用户能够上传还需在匿名用户的根目录下建立可读写的一个文件夹,如upload,用chmod设置
属性为**6或777,这样匿名用户就可以上传文件到upload中了,匿名用户好像不允许在ftp根目录下有写的权利。

你可能感兴趣的:(upload,ftp服务器,作业,list,download,delete)