单元2-3:Vsftpd服务的部署及优化

实验环境

server主机:

westos_node1

172.25.254.20

selinux关闭

火墙开启

dnf安装设定完成

client主机:

westos_linux

172.25.254.10

selinux关闭

dnf安装设定完成

安装lftp ——ftp协议文本浏览器

1.ftp介绍

ftp:file transfer proto

互联中最老牌的文件传输协议,它最主要的功能是在服务器与客户端之间进行文件传输。这个传输协议使用的是明文传输方式(有很多安全隐患)。

不同等级的用户身份:① 实体用户 user 、② 访客 guest 、③ 匿名用户 anonymous ;

2. vsftpd安装及启用

dnf install vsftpd -y ————server

dnf install lftp -y ————— client

关闭selinux

systemctl disable --now firewalld

vim /etc/vsftpd/vsftpd.conf

12 anonymous_enable=YES ——启动匿名用户的访问功能
在这里插入图片描述

systemctl restart vsftpd

测试安装发布:

firefox ftp://ip
lftp ip ————此访问方式必须能列出资源才算访问成功
在使用完成后请输入exit推出lftp
在这里插入图片描述

3.vsftpd基本信息

服务名称:

vsftpd.service

配置目录: /etc/vsftpd
主配置文件: /etc/vsftpd/vsftpd.conf
默认发布目录: /var/ftp
报错信息:

550 ——程序本身拒绝
553 ——文件系统权限限制
500 ——权限过大
530 ——认证失败

4.匿名用户访问控制

lftp 172.25.254.20 ——————当访问ftp服务时没有加入用户认证为匿名访问

lftp 172.25.254.20 -u westos ——本地用户访问

登陆控制

anonymous_enable=YES|NO
在这里插入图片描述
设置为允许 anonymous (匿名用户)登录 vsftpd主机

家目录控制

anon_root=/westosdir
在这里插入图片描述

在这里插入图片描述

上传控制

anon_upload_enable=YES|NO
在这里插入图片描述
是否允许 anonymous (匿名用户)具有上传数据的功能,默认 NO。

如要设置YES,anon_other_write_enable=YES 必须设置 。

chmod 775 /var/ftp/pub
chgrp ftp /var/ftp/pub
lftp 172.25.254.20
cd pub
put /etc/passwd
在这里插入图片描述
在这里插入图片描述

目录建立控制

anon_mkdir_write_enable=YES|NO
在这里插入图片描述
是否允许 anonymous (匿名用户)具有建立目录的功能,默认 NO。

如要设置YES,anon_other_write_enable=YES 必须设置 。

下载控制

anon_world_readable_only=NO ——匿名用户可以下载不能读的文件

仅允许 anonymous (匿名用户)具有下载可读文件的权限

删除重命令控制

anon_other_write_enable=YES|NO

是否允许 anonymous (匿名用户)具有除了写入之外的权限,包括删除、修改、重命名等权限,默认为 NO。

如要设置YES,开放给 anonymous (匿名用户)写入的文件目录需要调整权限,让vsftpd的 PID 拥有者可以写入才行。

匿名用户上传文件权限设定

anon_umask=xxx
anon_umask=022 ——当设定chown_username之后上传文权限将不是用此参数设定

匿名用户上传文件的用户身份设定

chown_upload=YES
chown_username=lee
chown_upload_mode=0644

登陆数量控制:

max_clients=2

上传速率控制

anon_max_rate=102400

例 让匿名用户可上传/下载自己资料

vim /etc/vsftpd/vsftpd.conf

write_enable=YES ——user(实体用户-包含具有ftp用户权限的匿名用户)具有写入的权限

anon_other_write_enable=YES —— anonymous (匿名用户)具有除了写入之外的权限,包括删除、修改、重命名等权限
anon_mkdir_write_enable=YES —— anonymous (匿名用户)具有建立目录的功能

anon_upload_enable=YES —— anonymous (匿名用户)具有上传数据的功能

systemctl restart vsftpd

mkdir /var/ftp/pub —— 建立匿名用户默认登录的家目录下的共享目录

chgrp ftp /var/ftp/pub —— 目录拥有组为ftp

chmod 775 /var/ftp/pub —— 更改权限使ftp权限的用户拥有最大权利

5.本地用户的访问

登陆控制

useradd westos
useradd lee
echo lee | passwd --stdin westos
echo lee | passwd --stdin lee
在这里插入图片描述

lftp 172.25.254.20 -u westos

local_enable=NO|YES

家目录控制

local_root=/software
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

写权限控制

write_enable=NO|YES

上传文件权限控制

local_umask=077
在这里插入图片描述

在这里插入图片描述

用户登陆控制

/etc/vsftpd/ftpusers ——永久黑
/etc/vsftpd/user_list —— 默认黑

用户登陆白名单

userlist_deny=NO ——设定/etc/vsftpd/user_list位白名单
不在名单中的用户不能登陆ftp

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

chmod u-w /home/*
chroot_local_user=YES

锁定用户到自己的家目录中的白名单

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

锁定用户到自己的家目录中的黑名单

chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

6.虚拟用户访问

1.建立虚拟用户过程

(1).vim /etc/vsftpd/ftp_auth_file #建立认证文件模板

westos1
123
westos2
123
westos3
123
在这里插入图片描述

(2).db_load -T -t hash -f ftp_auth_file ftp_auth_file.db

加密认证文件 -T 转换 -t type -f 指定转换文件

(3).vim /etc/pam.d/westos(.db)

account required pam_userdb.so db=/etc/vsftpd/ftp_auth_file

auth required pam_userdb.so db=/etc/vsftpd/ftp_auth_file
在这里插入图片描述

(4).vim /etc/vsftpd/vsftpd.conf

pam_service_name=westos —— 指定认证策略文件
guest_enable=YES —— 指定虚拟用户功能开启
guest_username=ftp —— 指定虚拟用户在ftp服务器上的用户身份

在这里插入图片描述

虚拟用户家目录的独立设定

mkdir -p /ftpuserdir/westos{1…3}

touch /ftpuserdir/westos1/westos1file

touch /ftpuserdir/westos2/westos2file

touch /ftpuserdir/westos3/westos3file

vim /etc/vsftpd/vsftpd.conf

local_root=/ftpuserdir/$USER

user_sub_token= $USER

systemctl restart vsftpd

用户配置独立

user_config_dir=/etc/vsftpd/user_config #在此目录中与用户名称相同的文件为用户配置文件

mkdir /etc/vsftpd/user_config

vim /etc/vsftpd/user_config/westos2

anon_upload_enable=YES

设定完成后westos2用户可以上传文件

westos1和westos3不行
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值