1、安装ftp

yum install vsftpd  -ysystemctl start vsftpd systemctl stop firewalld systemctl enable vsftpd setenforce 0   #关闭selinux或者设置selinux不然会对试验造成影响lftp ip        ##能登陆并且显示,表示安装成功

2、vsftpd文件信息

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

/etc/vsftpd##配置目录

3、vsftpd服务的配置参数

3.1 匿名用户设定

anonymous_enable=YES|NO       ##匿名用户登陆限制#
<匿名用户上传>
vim /etc/vsftpd/vsftpd.confwrite_enable=YESanon_upload_enable=YESchgrp ftp /var/ftp/pubchmod 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=YESchown_username=student#
<最大上传速率>
anon_max_rate=102400#
<最大链接数>
max_clients=2

3.2 本地用户设定

local_enable=YES|NO     ##本地用户登陆限制write_enable=YES|NO     ##本地用户写权限限制#
<本地用户家目录修改>
local_root=/directory#
<本地用户上传文件权限>
local_umask=xxx#
<限制本地用户浏览 目录>
所有用户被锁定到自己的家目录中chroot_local_user=YESchmod u-w /home/*用户黑名单建立chroot_local_user=NOchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list用户白名单建立chroot_local_user=YESchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list#
<限制本地用户登陆>
/etc/vsftpd/ftpusers   ##用户黑名单/etc/vsftpd/user_list  ##用户临时黑名单#用户白名单设定userlist_deny=NO        #serlist_deny=YES就是黑名单/etc/vsftpd/user_list   ##参数设定,此文件变成用户白名单,只在名单中出现的用户可以登陆ftp

3.3 一些其他的参数

ascii_upload_enable=YESascii_download_enable=YES#如果启用上面的两项则表示,用二进制传输文件,如果是文本类文件则会导致乱码listen=YES#yes表示将其定义为一个独立守护进程,反之则需要定义一个顺时守护进程,需要在 /etc/xinetd.d/写一个脚本#独立进程,适用用户访问量大,而且在线时间长#顺时进程,由超级守护继承(xinetd)代为管理,适用于用户访问量小,而且在线时间短max_clients #代表最多可以同时连接多少个客户端max_per_ip#每个IP可以同时发起几个连接请求pam_service_name=vsftpd#在使用pam做用户认证的时候在/etc/pam.d/下面pam的配置文件的名字userlist_enable=YES#在/etc/vsftpd/ftpusers文件中写的用户都禁止登录

49L[CZUI[PP56@DO5FN@T}0.png

3.3 虚拟账户登录

    1》创建虚拟账号身份

vim /etc/vsftpd/loginusers##文件名称任意ftpuser1123ftpuser2123ftpuser3123#加密虚拟账号文件db_load -T -t hash -f /etc/vsftpd/loginusers loginusers.db

    2》修改vsftp配置文件

vim /etc/vsftpd/vsftpd.confpam_service_name=ckvsftpdguest_enable=YESguest_username=ftpuser   #虚拟帐号身份指定local_root=/ftpuserhome/$USERuser_sub_token=$USERchmod u-w /home/ftpuser     #虚拟帐号家目录独立设

   3》创建各个用户的家目录

mkdir /ftpuserhomechgrp ftpuser /ftpuserhomechmod g+s /ftpuserhomemkdir /ftpuserhome/ftpuser{1..3}

   4》修改文件使文件,虚拟账号独立

vim /etc/vsftpd/vsftpd.confuser_config_dir=/etc/vsftpd/userconfmkdir -p /etc/vsftpd/userconf

注意: /etc/vsftpd/userconf/ftpuser1在此文件中设定配置文件中的所有参数,此文件的优先级高