背景要求:
某局域网需要配置一台FTP服务器,为局域网中的计算机提供文件传送任务,要求能够对FTP服务器设置用户限制、上传和下载限制、客户端身份验证等。


1、安装 vsftpd 和 ftp 包(服务机)

yum -y install vsftpd
yum -y install ftp

2、防火墙和SElinux设置

//防火墙设置:
firewall-cmd --add-service=ftp
firewall-cmd --runtime-to-permanent
firewall-cmd --list-all

要能看到 ftp
在这里插入图片描述

// selinux设置:
setsebool -P ftpd_full_access on
getsebool ftpd_full_access

结果如下:
在这里插入图片描述

3、配置匿名用户访问ftp服务器

  1. 在 ftp/pub 目录创建测试文件和目录
touch /var/ftp/pub/cangls.txt
mkdir try

!!不能修改 /var/ftp 的限权!!

  1. 给 /var/ftp/pub 目录设置权限
chmod 777 /var/ftp/pub	
  1. 配置主配置文件 /etc/vsftpd/vsftpd.conf
vi /etc/vsftpd/vsftpd.con

信息如下,其他命令全部删除:
!!不能有空行和多余的空格!! 前四行为设置匿名用户限权,最后一行是允许写操作,另外三行是必要的配置信息

anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
write_enable=YES

重启 vsftpd 服务

systemctl restart vsftpd

- 在客户机上进行测试

  1. 安装ftp包
yum -y install ftp
  1. 建立连接
// 在家目录中创建测试文件
touch cangls.mp4 
// 链接
ftp 192.168.112.129  👈 服务机ip
匿名登录用户名:anonymous

返回值为 230,即成功登录
在这里插入图片描述
3. 测试操作

ls   // 查看目录
cd pub // 进入 pub 目录,只赋予了pub目录权限,只能在pub上修改

结果图:
在这里插入图片描述


put cangls.mp4 	// 上传文件
mkdir cang		// 创建目录

结果图:
在这里插入图片描述


get cangls.txt

结果如图:
在这里插入图片描述
在建目录中可以看到下载的文件
在这里插入图片描述


!!! 删除文件的命令和删除目录的命令不一样 /(ㄒoㄒ)/~~~!!!

删除目录
rm try
删除文件
delete cangls.txt

在这里插入图片描述

4、配置本地用户访问ftp服务器,并做本地用户访问控制

配置主配置文件 /etc/vsftpd/vsftpd.conf

vi /etc/vsftpd/vsftpd.con

信息如下,其他命令全部删除:
!!不能有空行和多余的空格!!

local_enable=YES
local_umask=022
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_writeable_chroot=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
write_enable=YES

设置黑名单,默认情况下:/etc/vsftpd/user_list 为黑名单

vi /etc/vsftpd/user_list

//在最后一行加入,其他的用户不要动
cc

设置限权,让 aa 不受锁定限制,可以访问其他目录

vi /etc/vsftpd/chroot_list

//本机无此文件,需要新建,写入需要的用户名即可,一行一个
aa

重启 vsftpd 服务

systemctl restart vsftpd

- 在客户机上进行测试

  1. 创建用户
useradd aa
passwd aa
useradd bb
passwd bb
useradd cc
passwd cc	
  1. 黑名单用户登录
//登录 cc
ftp 192.168.112.129  👈 服务机ip
登录用户:cc

黑名单用户登录,结果如下图
在这里插入图片描述

  1. 被锁定在根目录的用户登录
//登录 bb
ftp 192.168.112.129  👈 服务机ip
登录用户:bb

被锁定在根目录的用户登录并尝试切换到 /etc 目录中,结果如下
在这里插入图片描述

  1. 无访问限制用户登录
//登录 bb
ftp 192.168.112.129  👈 服务机ip
登录用户:aa

无访问限制用户登录并尝试切换到 /etc 目录中,结果如下
在这里插入图片描述

Logo

更多推荐