概述:

FTP ( 文件传输协议 ) 是 INTERNET 上仍常用的最老的网络协议之一 , 它为系统提供了通过网络与远程服务器进行传输的简单方法FTP

服务器包的名称为 VSFTPD , 它代表 Very Secure File Transfer Protocol Daemon 服务器名称也叫做 vsftpd

远程FTP客户端能以用户anyonymous或ftp身份连接到服务器(无需密码),并在安装之前要执行的任务:

1.更改selinux为disabled,重启生效

配置文件为:下面开始搭建vsftpd服务器:

1.yum install vsftpd -y ##安装ftp服务

vsftp pasv_address配置 配置vsftpd服务器_白名单

2.systemctl start&enable vsftp ##开启服务

vsftp pasv_address配置 配置vsftpd服务器_白名单_02

3.firewall-cmd --permanent --add-service=ftp ##将ftp加入防火墙的允许名单

vsftp pasv_address配置 配置vsftpd服务器_vim_03

4.firewall-cmd --reload ##重新加载防火墙

vsftp pasv_address配置 配置vsftpd服务器_其他_04

5.firewall-cmd --list-all ##查看防火墙的内容

ftp已被允许

vsftp pasv_address配置 配置vsftpd服务器_vim_05

服务器搭建完成!

在客户端链接vsftpd服务器

本次实验服务端与客户端为一台主机

1.安装lftp

vsftp pasv_address配置 配置vsftpd服务器_其他_06

2.lftp 服务端ip

vsftp pasv_address配置 配置vsftpd服务器_白名单_07

配置成功!

ftp的配置文件:/etc/vsftpd/vsftpd.conf

1.匿名用户

anonymous_enable=YES|NO ##匿名用户是否可以登录

vsftp pasv_address配置 配置vsftpd服务器_vim_08

vsftp pasv_address配置 配置vsftpd服务器_白名单_09

2.本地用户

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

vsftp pasv_address配置 配置vsftpd服务器_服务器_10

vsftp pasv_address配置 配置vsftpd服务器_白名单_11

3.匿名用户上传

【1】配置文件

write_enable=YES|NO

anon_upload_enable=YES
vsftp pasv_address配置 配置vsftpd服务器_白名单_12

[2]修改权限

chgrp ftp /var/ftp/pub/

chmod 775 /var/ftp/pub/

vsftp pasv_address配置 配置vsftpd服务器_vim_13

实验:

vsftp pasv_address配置 配置vsftpd服务器_vim_14

4.匿名用户家目录修改

5.匿名用户上传文件默认权限修改

anon_umask=022

vsftp pasv_address配置 配置vsftpd服务器_vim_15

vsftp pasv_address配置 配置vsftpd服务器_服务器_16

6.匿名用户建立目录

anon_mkdir_write_enable=YES|NO

vsftp pasv_address配置 配置vsftpd服务器_vim_17

实验:

vsftp pasv_address配置 配置vsftpd服务器_vim_18

7.匿名用户下载

anon_world_readable_only=YES|NO? ##参数NO表示用户可以下载

vsftp pasv_address配置 配置vsftpd服务器_服务器_19

实验:

vsftp pasv_address配置 配置vsftpd服务器_vim_20

8.匿名用户删除

anon_other_write_enable=YES|NO
vsftp pasv_address配置 配置vsftpd服务器_白名单_21

实验:

vsftp pasv_address配置 配置vsftpd服务器_服务器_22

9.最大上传速率

anon_max_rate=102400? ##每秒钟100K的速度
vsftp pasv_address配置 配置vsftpd服务器_vim_23

实验:

vsftp pasv_address配置 配置vsftpd服务器_vim_24

10.本地用户上传文件权限

local_umask=022

vsftp pasv_address配置 配置vsftpd服务器_其他_25

实验:

vsftp pasv_address配置 配置vsftpd服务器_其他_26

11.限制本地用户浏览目录

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

chroot_local_user=YES

chmod u-w /home/*

vsftp pasv_address配置 配置vsftpd服务器_白名单_27

实验:student用户被锁定到自己的家目录中

vsftp pasv_address配置 配置vsftpd服务器_其他_28

12.用户黑名单的建立

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list qs
vsftp pasv_address配置 配置vsftpd服务器_其他_29

vim /etc/vsftpd/chroot_list ##添加列表名单

vsftp pasv_address配置 配置vsftpd服务器_服务器_30

实验:

vsftp pasv_address配置 配置vsftpd服务器_服务器_31

13.用户白名单的建立

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

vsftp pasv_address配置 配置vsftpd服务器_其他_32

vim /etc/vsftpd/chroot_list ##添加列表名单

 

vsftp pasv_address配置 配置vsftpd服务器_服务器_30

实验:

vsftp pasv_address配置 配置vsftpd服务器_服务器_34

14.限制本地用户登陆

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

vsftp pasv_address配置 配置vsftpd服务器_服务器_35

实验:

vsftp pasv_address配置 配置vsftpd服务器_白名单_36

vim /etc/vsftpd/user_list? ##用户临时黑名单,默认为黑名单,也可修改为白名单

 

用户白名单的设定

vim /etc/vsftpd/vsftpd.conf

userlist_deny=NO

vsftp pasv_address配置 配置vsftpd服务器_白名单_37

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

实验:在/etc/vsftpd/user_list 中加入linux

vsftp pasv_address配置 配置vsftpd服务器_其他_38

student在ftpusers和user_list中都有,ftpuser的执行权限高以它为准。

当黑名单和白名单同时存在,以黑名单为准。

yum install pam

vsftp pasv_address配置 配置vsftpd服务器_vim_39

创建虚拟帐号身份
1.vim /etc/vsftpd/userdb ##文件名称任意

vsftp pasv_address配置 配置vsftpd服务器_白名单_40?

2.db_load -T -t hash -f userdb userdb.db? ##加密
vsftp pasv_address配置 配置vsftpd服务器_vim_41
3.vim /etc/pam.d/ftpuser ##文件名任意
vsftp pasv_address配置 配置vsftpd服务器_vim_42
4. vim /etc/vsftpd/vsftpd.conf

vsftp pasv_address配置 配置vsftpd服务器_其他_43?

实验:

vsftp pasv_address配置 配置vsftpd服务器_其他_44

虚拟用户家目录独立设定

建立用户指定的家目录

vsftp pasv_address配置 配置vsftpd服务器_白名单_45

设定用户的家目录

vim /etc/vsftpd/vsftpd.conf

vsftp pasv_address配置 配置vsftpd服务器_白名单_46

##$USER将回显用户的名称

实验:

vsftp pasv_address配置 配置vsftpd服务器_vim_47

虚拟账号的独立设置

建立目录

vsftp pasv_address配置 配置vsftpd服务器_白名单_48

编辑文件? /etc/vsftpd/vsftpd.conf

添加内容:

vsftp pasv_address配置 配置vsftpd服务器_vim_49

把匿名用户可以上传的功能进行注释

vsftp pasv_address配置 配置vsftpd服务器_白名单_50

重启服务!

修改权限并建立目录

vsftp pasv_address配置 配置vsftpd服务器_白名单_51

编辑文件 /etc/vsftpd/userconf/user1

使user1可以上传文件

vsftp pasv_address配置 配置vsftpd服务器_其他_52

实验:

vsftp pasv_address配置 配置vsftpd服务器_vim_53