vsftp安装配置

近日在ubuntu 14.04.1上安装配置vsftp 3.0.2,安装过程及配置总结如下:

配置前已创建ftp根目录/home/frank/ftp并设置好权限

1.安装vsftp:
  $sudo apt-get install vsftpd
2.修改/etc/shells文件,如果文件中没有则增加行/usr/sbin/nologin以避免错误:530 login incorrect
  $sudo vi /etc/shells
   /usr/sbin/nologin
3.添加ftp用户(admin)
  $sudo useradd --home-dir /home/frank/ftp -g ftp --shell /usr/sbin/nologin admin
  $sudo passwd admin
4.修改vsftpd.conf
  $sudo vi /etc/vsftpd.conf
   local_enable=YES
   write_enable=YES
   local_umask=007 #设置上传文件默认权限掩码,默认屏蔽其它用户任何权限,开放自己及组用户权限
   allow_writeable_chroot=YES #如果没有则增加此行避免错误:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()

   #以下配置设定所有用户被限制在主目录,但在/etc/vsftpd.chroot_list文件中列出的用户除外
   chroot_local_user=YES
   chroot_list_enable=YES
   chroot_list_file=/etc/vsftpd.chroot_list

   #以下配置只有在文件/etc/vsftpd.user_list中被列出的用户才被允许登陆
   userlist_enable=YES
   userlist_deny=NO
   userlist_file=/etc/vsftpd.user_list
5.修改/etc/vsftpd.user_list,添加允许登陆用户,每用户占一行
   $sudo vi /etc/vsftpd.user_list
    admin
6.重启vsftpd: 
   $sudo restart vsftpd

附vsftpd.conf配置说明
   a. ftp黑名单文件/etc/ftpusers不受任何配置项影响,而且一直有效,其中存放的是一个禁止访问FTP的用户列表
   b. userlist_enable,userlist_deny,userlist_file配置
      b-1. 当userlist_enable=NO时,所有用户被允许登陆,此时userlist_deny和userlist_file配置失效;
      b-2. 当userlist_enable=YES时
              若userlist_deny=YES,则userlist_file配置文件中将列出禁止登陆的用户,其它用户允许登陆
              若userlist_deny=NO, 则userlist_file配置文件中将列出允许登陆的用户,其它用户禁止登陆
   c. chroot_local_user, chroot_list_enable,chroot_list_file配置
      c-1. 当chroot_local_user=YES,则所有用户被限制在主目录,除非有例外情况;
             当chroot_local_user=NO,则所有用户不被限制在主目录,除非有例外情况
      c-2. 当chroot_list_enable=YES,则chroot_list_file配置文件中列出例外用户,每用户占用一行
             当chroot_list_file=NO,则无例外情况,chroot_list_file配置文件不起作用
           

你可能感兴趣的:(linux)