#######################################################################3

###################vsftpd服务###########################################

#########################################################################

1.什么是ftp

文件传输协议

2.安装ftp

 

yum install vsftpd  -y

systemctl start vsftpd

systemctl stop firewalld

systemctl enable vsftpd

setenforce 0

lftp ip    ##能登陆并且显示,表示安装成功

3.vsftpd文件信息

/var/ftp    ##默认发布目录

/etc/vsftpd    ##配置目录

 

4.vsftpd服务的配置参数

1)匿名用户设定

anonymous_enable=YES|NO    ##匿名用户登陆限制

 

#<匿名用户上传>

vim /etc/vsftpd/vsftpd.conf

write_enable=YES

29:anon_upload_enable=YES

chgrp ftp /var/ftp/pub

chmod 775 /var/ftp/pub

 

#<匿名用户家目录修改>

anon_root=/direcotry

 

#<匿名用户上传文件默认权限修改>

anon_umask=xxx

 

#<匿名用户建立目录>

anon_mkdir_write_enable=YES|NO

 

#<匿名用户下载>

anon_world_readable_only=YES|NO     ##设定参数值为no表示匿名用户可以下载

 

#<匿名用户删除>

anon_other_write_enable=YES|NO

 

#<匿名用户使用的用户身份修改>

chown_uploads=YES

chown_username=student

 

#<最大上传速率>

anon_max_rate=102400

 

#<最大链接数>

max_clients=2

 

2)本地用户设定

local_enable=YES|NO    ##本地用户登陆限制

write_enable=YES|NO    ##本地用户写权限限制

 

#<本地用户家目录修改>

local_root=/directory

 

#<本地用户上传文件权限>

local_umask=xxx

 

#<限制本地用户浏览/目录>

所有用户被锁定到自己的家目录中

chroot_local_user=YES

chmod u-w /home/*

 

用户黑名单建立

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

 

 

用户白名单建立

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

 

#<限制本地用户登陆>

vim /etc/vsftpd/ftpusers        ##用户黑名单

vim /etc/vsftpd/user_list        ##用户临时黑名单

 

用户白名单设定

userlist_deny=NO

/etc/vsftpd/user_list        ##参数设定,此文件变成用户白名单,只在名单中出现的用户可以登陆ftp

 

 

 

#<ftp虚拟用户的设定>

创建虚拟帐号身份)

vim /etc/vsftpd/loginusers        ##文件名称任意

ftpuser1

123

ftpuser2

123

ftpuser3

123

 

db_load -T -t hash -f /etc/vsftpd/loginusers loginusers.db

 

vim /etc/pam.d/ckvsftpd        ##文件名称任意

accountrequiredpam_userdb.sodb=/etc/vsftpd/loginusers

authrequiredpam_userdb.sodb=/etc/vsftpd/loginusers

 

vim /etc/vsftpd/vsftpd.conf

pam_service_name=ckvsftpd

guest_enable=YES

 

虚拟帐号身份指定)

guest_username=ftpuser

chmod u-w /home/ftpuser

 

虚拟帐号家目录独立设定)

vim /etc/vsftpd/vsftpd.conf

local_root=/ftpuserhome/$USER

user_sub_token=$USER

 

mkdir /ftpuserhome

chgrp ftpuser /ftpuserhome

chmod g+s /ftpuserhome

mkdir /ftpuserhome/ftpuser{1..3}

 

 

虚拟帐号配置独立)

vim /etc/vsftpd/vsftpd.conf

user_config_dir=/etc/vsftpd/userconf

mkdir -p /etc/vsftpd/userconf

 

vim /etc/vsftpd/userconf/ftpuser1

在此文件中设定配置文件中的所有参数,此文件的优先级高