一、ftp服务
1.ftp的定义
ftp://  文件传输协议

2.ftp协议提供的软件
在rhel7.2中:
vsftpd

3.部署ftp服
vim /etc/yum.repos.d/***.repo  #设置yum源
图示:yum源的设置
e07a3d895315b30b43ebb53314bb9ff8.png-wh_
yum clean all
yum install vsftpd -y
图示:安装vsftpd
b6ddd97bc3321c9be3abc78e8851a663.png-wh_
systemctl start vsftpd
systemctl enable vsftpd
图示:开重新加载vsftpd
bdc4d8d7b44d84af596c5f8dcf2d62cd.png-wh_
firewall-cmd --permanent --add-service=ftp ##增加服务ftp
firewall-cmd --reload    ##重新加载防火墙
图示:重新加载
787e7b642af3b8a2f57ca6dda526e142.png-wh_
[kiosk@foundation60 Desktop]$ lftp 172.25.254.2
lftp 172.25.254.2:~> ls             
drwxr-xr-x    2 0        0               6 Aug 03  2015 pub


**ftp服务的基本信息
软件安装包:  vsftpd
默认发布目录: /var/ftp
协议接口:   21/tcp
服务配置文件: /etc/vsftpd/vsftpd.conf


4. ftp的基本配置
1> 基本设置
vim /etc/vsftpd/vsftpd.conf     ##修改配置文件
systemctl restart vsftpd      ##每次修改配置文件都得重启服务
匿名用户

anonymous_enable=YES | NO     ##匿名用户是否可以登陆
图示:匿名用户不可以登陆
49977f97f7e809f4ac835356a7f6e2ef.png-wh_
本地用户
vim /etc/vsftpd/vsftpd.conf

 16 local_enable=YES  | NO       ##本地用户是否可以登陆
 19 write_enable=YES  | NO       ##ftp是否对登陆用户可写

systemctl restart vsftpd    
图示:本地用户不可以登陆
c5108b030cd60af622f5daaf3b85ccbb.png-wh_
图示:本地用户登陆不可写
973382fcf92b9e48654b14338c6a56ae.png-wh_

2>匿名用户的上传
vim /etc/vsftpd/vsftpd.conf
 19 write_enable=YES
 29 anon_upload_enable=YES | NO      ##匿名用户上传(29行)
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub
图示:匿名用户可上传
81c9ac5e453b949045c0142d2ed42ee2.png-wh_

3>匿名用户家目录的修改
 31 anon_root=/westos
图示:修改

a3dae9f9b24848314c1c70cbf00369de.png-wh_
4>匿名用户上传文件默认权限修改
 30 anon_umask=***
图示:匿名用户权限修改为022
9292d946d4fd8877621d9df5e5e3598d.png-wh_
5>匿名用户建立目录
 34 anon_mkdir_write_enable=YES
图示:允许建立目录

a69f03d113cd17fb86bfd5f3cae59965.png-wh_
6>匿名用户下载
 35 anon_world_readable_only=YES |NO           ##设定参数为no表示匿名用户可以下载
图示:不允许匿名用户下载
12350e02fd874c2dbe853ef28da2f7cb.png-wh_
                                            
7>匿名用户删除
 36 anon_other_write_enable=YES
图示:允许匿名用户删除
fbbd129dedc80f2a1ca1bf947839cdff.png-wh_
8>匿名用户使用的身份修改
 51 chown_uploads=YES
 52 chown_username=student
图示:匿名用户身份都为student


9>最大上传速率
 53 anon_max_rate=2048000
图示:最大上传速率
8a27b0a339809039ac1b85394d7fea25.png-wh_
10>最大链接数
 54 max_clients=2
图示:最大链接数

a59a4806030e0a2b7c0da032177d4c57.png-wh_


二、本地用户的设定
 16 local_enable=YES | ON
 19 write_enable=YES | ON

1>本地用户家目录修改
 24 local_root=/directory
图示:修改参数

c6c6d8c7a10f0aa5c4c9464a3cf0ee6f.png-wh_
2>本地用户上传文件权限
 23 local_umask=022
图示:上传的权限

8dcc50c847a5596705ac78391f091c0e.png-wh_
3>限制本地用户浏览目录
所有用户被锁定到自己的家目录中
105 chroot_local_user=YES
chmod u-w /home/*
图示:修改配置源文件

ce15412fddf1c16018716944158a1a94.png-wh_

*用户黑名单建立
105chroot local user=NO
106 chroot_list_enable=YES
108 chroot_list_file=/etc/vsftpd/chroot_list
图示:修改配置源文件

c4b67657e2460036f1a1c6921233f819.png-wh_

*用户白名单建立

105chroot local user=YES
106 chroot_list_enable=YES
108 chroot_list_file=/etc/vsftpd/chroot_list
图示:修改配置源文件

af38cab30acad57179c8b3238552e5a1.png-wh_

4>限制本地用户登陆
vim /etc/vsftpd/ftpusers     ##用户黑名单
vim /etc/vsftpd//user_list   ##用户临时黑名单
图示:ftpusers文件修改

5b6e9d9c91f8a4ec3b3e9eb8bfde9097.png-wh_

图示:user_list文件修改

48da70ba0f7f2841cdacf4510b604d88.png-wh_

图示:测试

临时黑名单用户lee

a719468db789a2cbcba10eab98874472.png-wh_

用户白名单设定

109 userlist_deny=NO
  /etc/vsftpd/user_list  ##参数设定,此文件变成用户白名单,只在名单中出现的用户可以登陆ftp
图示:配置文件修改

7c99a574e5f7272a05154b36ac543415.png-wh_

图示:测试

除白名单中的用户外,其他用户均不可以登陆

ac536292ab0b666424f92db8a320513a.png-wh_
三、ftp虚拟用户的设定
创建虚拟帐号身份)
vim /etc/vsftpd/loginusers  ##文件名称任意
pam_service_name=westos
guest_enable=YES
guest_username=ftp
userlist_enable=YES
tcp_wrappers=YES
图示:vsftpd文件修改

6b35bb1bcf611422861ba77dbd8ee6dd.png-wh_

虚拟帐号身份)