• 幕客老师召集小伙伴
  • 运维高手36项修炼
  • python自动化运维项目实战
  • nginx从入门到实战
  • 阿里云与Centos7实战

vsftpd创建虚拟用户

 

1、yum install vsftpd

2、yum install db4 db4-utils -y  #修改配置文件

 

#vim /etc/vsftpd/vsftpd.conf

 

#========================#

# User Config     #

#========================#

anonymous_enable=NO

local_enable=YES

#listen_address=www.iaskjob.com

 

 

#=======================#

# Permissions Config#

#=======================#

write_enable=YES

local_umask=022

anon_upload_enable=NO

anon_mkdir_write_enable=NO

#chown_uploads=NO

#chown_username=root

 

userlist_enable=YES

 

chroot_local_user=YES

 

chroot_list_enable=YES

 

chroot_list_file=/etc/vsftpd/chroot_list

 

 

 

#ls_recurse_enable=YES

 

tcp_wrappers=YES

 

 

 

#=================#

# Log File Config   #

#=================#

dual_log_enable=YES

xferlog_enable=YES

xferlog_std_format=YES

xferlog_file=/logs/ftp/xferlog.log

vsftpd_log_file=/logs/ftp/vsftpd.log

use_localtime=YES

 

#===========================#

# Transport Config      #

#===========================#

idle_session_timeout=600

data_connection_timeout=100

#nopriv_user=ftpsecure

async_abor_enable=YES

 

#ascii_upload_enable=YES

#ascii_download_enable=YES

 

#============================#

# Welcome information Config #

#============================#

#ftpd_banner=Welcome to blah FTP service.

#deny_email_enable=YES

#banned_email_file=/etc/vsftpd/banned_emails

dirmessage_enable=NO

 

#=======================#

# Port Config    #

#=======================#

listen=YES

#pasv_enable=NO

#listen_ipv6=YES

 

#============#

# pam module #

#============#

pam_service_name=vsftpd

 

 

 

#=============================#

# Virutal User Config      #

#=============================#

#设定启用虚拟用户功能。

guest_enable=YES

 

#指定虚拟用户的宿主用户

guest_username=ftpuser

 

 

#设定虚拟用户的权限符合他们的宿主用户

virtual_use_local_privs=YES

 

# 设定虚拟用户个人Vsftp的配置文件存放路径。

# 也就是说,这个被指定的目录里,将存放每个

# Vsftp虚拟用户个性的配置文件,一个需要注意的

# 地方就是这些配置文件名必须和虚拟用户名相同。

# 比如说vsftpd.conf的配置文件,你复制到这个目

# 录下,你要mv一下,配置成虚拟用户的名称

user_config_dir=/etc/vsftpd/vconf

#connect_from_port_20=YES

pasv_enable=YES

max_per_ip=0

max_clients=300

pasv_min_port=30000

pasv_max_port=31000

pasv_promiscuous=YES

#port_promiscuous=YES

 

local_root=/var/test1

#虚拟用户限速

local_max_rate=600000

anon_world_readable_only=NO

cmds_allowed=ABOR,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,RNFR,RNTO,SIZE,STOR,TYPE,USER,REST,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST,FEAT,PUT,DELETE

4、建立虚拟用户

useradd -d /home/ftpuser -s /sbin/nologin  ftpuser

5、创建上传文件目录,给予权限(chown ftpuser:ftpuser)

/data/vsftpd/imoocc_push/

6、认证文件:/etc/vsftpd/virtusers(基数行用户名,偶数行密码)

     ftpviruser

     aaabbpass

7、生成认证文件:

  1. db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.d

 

8、配置文件修改:/etc/pam.d/vsftpd

# Standard behaviour for ftpd(8).

#auth   required        pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed

 

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

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

session    optional     pam_keyinit.so    force revoke

auth       required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed

auth       required pam_shells.so

auth       include  system-auth

account    include  system-auth

session    include  system-auth

session    required     pam_loginuid.so

 

# Note: vsftpd handles anonymous logins on its own. Do not enable pam_ftp.so.

 

# Standard pam includes

#@include common-account

#@include common-session

#@include common-auth

#auth   required        pam_shells.so

 

错误处理:

  1. Feb 13 15:39:24 ecloud sshd[7285]: lastlog_openseek: Couldn't stat /var/log/lastlog: No such file or directory

    解决办法:手动touch 一个空文件 var/log/lastlog

vsftpd创建虚拟用户

Pingbacks已打开。

引用地址

暂无评论

发表评论