当前位置:首页 > linux教程 > 列表

linux中vsftpd下虚拟用户+被动模式配置详解

发布:smiling 来源: PHP粉丝网  添加日期:2015-05-07 14:07:25 浏览: 评论:0 

vsftpd服务器分为主动模式与被动模式两种了,下面我们来为各位介绍linux中vsftpd下虚拟用户+被动模式配置详解,希望文章对各位有用,下面说说在linux下部署vsftp的过程吧,小小笔记.

一、安装

这里我说下最简单的rpm包安装,因为光盘中有,何必编译呢?

yum install db4* vsftpd -y

二、配置

1、新建系统用户

useradd vsftpd -s /sbin/nologin

限制vsftpd用户登录,此用户将最为vsftpd服务的宿主用户.

useradd ftp -s /sbin/nologin

这里是Vsftpd虚拟宿主用户,默认情况下这个用户应该有,当然这些用户你可以用另外的名字.

2、修改vsftpd的配置。

  1. anonymous_enable=NO #设定不允许匿名访问 
  2. local_enable=YES #设定本地用户可以访问。如果设定为NO那么所有虚拟用户将无法访问。 
  3. write_enable=YES #设定可以进行写操作。 
  4. local_umask=022 #设定上传后文件的权限掩码。 
  5. anon_upload_enable=NO #禁止匿名用户上传。 
  6. anon_mkdir_write_enable=NO #禁止匿名用户建立目录。 
  7. dirmessage_enable=YES #设定开启目录标语功能。 
  8. xferlog_enable=YES #设定开启日志记录功能。 
  9. connect_from_port_20=NO #禁止端口20进行数据连接。这里用被动模式 
  10. chown_uploads=NO #设定禁止上传文件更改宿主。 
  11. xferlog_file=/var/log/vsftpd.log #设定Vsftpd的服务日志保存路径 
  12. xferlog_std_format=YES #设定日志使用标准的记录格式。 
  13. idle_session_timeout=600 #设定空闲连接超时时间 
  14. nopriv_user=vsftpd #设定支撑Vsftpd服务的宿主用户 
  15. async_abor_enable=YES #设定支持异步传输功能 
  16. ascii_upload_enable=YES 
  17. ascii_download_enable=YES #设定支持ASCII模式的上传和下载功能 
  18. ftpd_banner=vsftpd #设定Vsftpd的登陆标语 
  19. chroot_list_enable=NO #禁止用户登出自己的FTP主目录 
  20. ls_recurse_enable=NO #禁止用户登陆FTP后使用"ls -R"的命令,占用资源 
  21. listen=YES #设定该Vsftpd服务工作在StandAlone模式 
  22. #新增配置 
  23. pam_service_name=vsftpd #设定PAM服务下Vsftpd的验证配置文件名 
  24. userlist_enable=YES #设定userlist_file中的用户将不得使用FTP 
  25. tcp_wrappers=YES #设定支持TCP Wrappers 
  26. guest_enable=YES #设定启用虚拟用户功能 
  27. guest_username=ftp #指定虚拟用户的宿主用户 
  28. virtual_use_local_privs=YES #设定虚拟用户的权限符合他们的宿主用户  --phpfensi.com 
  29. user_config_dir=/etc/vsftpd/vconf #设定虚拟用户个人Vsftp的配置文件存放路径 

3、新建用户

  1. touch /etc/vsftpd/user_list 
  2. #写入 
  3. testuser #用户名 
  4. 123456 #密码 

4、生成数据文件

db_load -T -t hash -f /etc/vsftpd/user_list /etc/vsftpd/user.db

5、修改pam。

auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login

account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login

必须把这两条插入#%PAM-1.0后面,其中sufficient表示充分条件,如果通过了,同类型的验证就不需要了。

6、配置虚拟用户。

按照上面的用户配置对应的文件:touch /etc/vsftpd/vconf/testuser

新建虚拟用户的目录:mkdir /opt/vsftp/virtuser && chown root.ftp /opt/vsftp/virtuser

用户登录后会限制在这个目录里面做读写操作,配置如下内容,不一定都需要.

  1. local_root=/opt/vsftp/virtuser #指定虚拟用户的具体主路径。 
  2. idle_session_timeout=600 #设定空闲连接超时时间。 
  3. data_connection_timeout=120 #设定单次连续传输最大时间。 
  4. max_clients=10 #设定并发客户端访问个数。 
  5. max_per_ip=5 #设定单个客户端的最大线程数 
  6. local_max_rate=50000 #设定该用户的最大传输速率,单位b/s。 

另外前面主配置文件的配置,在这里可以重新配置覆盖,好了启动vsftp 测试下吧.

Tags: vsftpd linux虚拟用户

分享到: