一。检查Linux中vsftpd的安装情况。

二。将系统中的SELinux关闭,然后重新启动电脑

 关闭SELinux的方法:

 修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启。
 如果不想重启系统,使用命令setenforce 0
 注:
 setenforce 1 设置SELinux 成为enforcing模式
 setenforce 0 设置SELinux 成为permissive模式
 在lilo或者grub的启动参数中增加:selinux=0,也可以关闭selinux

 setsebool ftpd_disable_trans 1

三。建立用户和指定目录

 #useradd -d /home/ftpdata3 ftp3

 #passwd ftp3

 建立用户ftp3,并指定其ftp目录为ftpdata3

 #useradd -d /home/ftpdata3 ftp4

 #passwd ftp4

 建立用户ftp4,并指定其ftp目录为ftpdata4

 这样ftp3和ftp4用户就被指定到相应的文件夹下。

四。修改vsftpd.conf配置文件

 将anonymous_enable改为NO,阻止匿名上传

 将chroot_list_enable和chroot_list_file的注释去掉,阻止用户访问上级目录

五。在/etc/vsftpd下建立chroot_list文件

 建立完成后,在其中添加用户ftp3,ftp4,使其只允许访问指定目录。

六。启动或是重启fto服务。

 #service vsftpd restart(start)

启动成功后,就可以访问ftp服务了。

注:配置文件中的解释

anonymous_enable=YES开启匿名用户登录
local_enable=YES开启本地用户登录
write_enable=YES开启写权限以便上传
local_umask=022设置上传后文件为user=rwx, group=, other=
这样,用户上传文件后,是不能删除和修改了。因为用户属于group组。
解决方法是,设置local_umask=002。
最终文件权限是777-文件夹掩码-local_umask掩码
anon_upload_enable=YES开启匿名用户上传权限
统一匿名上传用户上传的文件的属性
chown_uploads=YES
chown_username=ftp
设定chroot配置,禁止特定用户访问上一级目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
userlist_enable=YES这个选项如果是YES,那/etc/vsftpd/user_list中的用户将被禁止访问ftp。如果是NO,则只有user_list里面的用户才能访问ftp

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yanwudingkou/archive/2010/01/19/5211528.aspx