梦想的生活,就是去新西兰放羊

vsftpd配置

---[2015-05-03 21:29]---

(系统环境: Centos 7 64bit)

一、下载源码包,或直接从库中安装

二、配置

   vim  /etc/vsftpd/vsftpd.conf

 设以下选项

    anonymous_enable=NO    # 是否支持匿名用户

    ascii_upload_enable=YES    
    ascii_download_enable=YES

  userlist_enable=YES        # 是否支持文件列表管理用户

  listen_port=21        # 以独立进程监听此端口

  pasv_enable=YES       # 被动模式

  chroot_local_users=YES     # 将用户转到各自home目录

  local_umask=022        # 系统user上传时,使用此权限(文件:644,文件夹:755)

  anon_umask=022       # 虚拟用户上传时,使用此权限 

  file_open_mode=644      # 文件权限

 

三、(可选)/etc/vsftpd/ftpusers  此文件中用户禁止登录

四、/etc/vsftpd/user_list(使用实际系统用户时需要)

  进入编辑 /etc/vsftpd/user_list 用户列表

  开启userlist支持:

     userlist_enable=YES    

  userlist_deny=YES   #user_list里的用户拒绝登录
  userlist_deny=NO    #user_list里的用户允许登录

五、/etc/vsftpd/chroot_list

   # chroot_local_user=YES     #设为YES将把所有用户限制在home目录

  或者, 只限定指定用户到home目录

   # chroot_list_enable=YES

   # chroot_list_file=/etc/vsftpd/chroot_list

以上的账号部分,都是针对实际user的。或者,我们可以使用虚拟账户。如下

六、上传文件权限

  chown_uploads=YES        #开启上传文件自动更改own
  chown_username=vsftpd   #上传完毕时,文件所有者更改为此用户。     

   需要注意的是,  vsftpd的系统user账号(vsftpd) 需要拥有 上传目录的写入权限,才能chown改所有者

 

※  建立虚拟用户

  这是一个非常有用的功能, 它建立的是虚拟账号, 在操作时以指定user执行的。

  @开启虚拟账户选项

  编辑 /etc/vsftpd/vsftpd.conf:

  pam_service_name=vsftpd
  guest_enable=YES  #开启虚拟用户
  guest_username=vsftp  #虚拟用户实际上使用的系统账号

  @建立这个系统账号

  # useradd -s /sbin/nologin vsftp

 

  @生成用户账号及密码,并应用

  # vim vuser_list.txt  #编辑, 奇数行账号,偶数行密码

  # db_load -T -t hash -f /etc/vsftpd/vuser_list.txt  /etc/vsftpd/vuser_list.db

   

  # pam_service_name=vsftpd    #  放在/etc/pam.d/下面认证文件的名字

  # vim /etc/pam.d/vsftpd   

  注释所有,添加以下两行 指定为 vuser_list.db

  # auth required pam_userdb.so db=/etc/vsftpd/vuser_list
  # account required pam_userdb.so db=/etc/vsftpd/vuser_list

 

  @可以给虚拟账号限定home目录,即用户ftp连接顶层目录

  user_config_dir=/etc/vsftpd/vuser.d

  在此文件夹下,给每个用户建立一个同名文件,内容如

  local_root=/var/www/html/abc.com

 

  @关于虚拟用户的权限(这些选项可以单独写到虚拟user独立配置文件中去)

  virtual_use_local_privs=NO    # 是否让虚拟用户和实际系统user具有相同权限

  write_enable=YES          

 

  主要用户权限项:
  anon_world_readable_only=YES  # 是否只读

  anon_upload_enable=YES    # 是否允许上传

  anon_mkdir_write_enable=YES  # 是否可以创建文件夹

  anon_other_write_enable=YES  # 是否允许其他写权限,如删除、重命名

  

  @关于文件权限

   anon_umask  和  file_open_mask 控制

 

  (本博客相关文章:给linux下网站目录配置SFTP )

 

posted @ 2015-05-03 21:29  Shautch Donne  阅读(188)  评论(0编辑  收藏  举报