3.1Vsftpd服务的部署及优化

实验环境

#########################
#
#server主机:
# westos_node1
# 172.25.254.250
# selinux关闭
# 火墙开启
# dnf安装设定完成
#
#client主机:
# westos_linux
# 172.25.254.100
# selinux关闭
# dnf安装设定完成
# 安装lftp #ftp协议文本浏览器

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

1.ftp介绍

ftp:file transfer proto
互联中最老牌的文件传输协议

FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。然而,
用户并不真正登录到自己想要存取的计算机上面而成为完全用户, 可用FTP程序访问远程资源,
实现用户往返传输文件、目录管理以及访问电子邮件等等, 即使双方计算机可能配有不同的操作系统和文件存储方式。

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 192.168.0.10 ##当访问ftp服务时没有加入用户认证为匿名访问
lftp 192.168.0.10 -u westos ##本地用户访问

(1)家目录控制

家目录控制

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

(2)上传控制

上传控制
anon_upload_enable=YES|NO
chmod 775 /var/ftp/pub
chgrp ftp /var/ftp/pub
lftp 192.168.0.100
cd pub
put /etc/passwd

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

(3)目录建立控制

目录建立控制
anon_mkdir_write_enable=YES|NO

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述在这里插入图片描述 (4)下载控制

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

在这里插入图片描述

在这里插入图片描述

(5)删除控制

删除重命令控制
anon_other_write_enable=YES|NO

在这里插入图片描述在这里插入图片描述

(6)更改上传文件权限

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

在这里插入图片描述在这里插入图片描述

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

(7)匿名用户上传问价的用户身份设定

匿名用户上传文件的用户身份设定
chown_upload=YES 
chown_username=lee      ##更改所有人所有组
chown_upload_mode=0644  指定用户上传权限

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

(8)登陆数量控制

登陆数量控制:

在这里插入图片描述在这里插入图片描述

 max_clients=2

(9)上传速率控制

上传速率控制
   anon_max_rate=102400

在这里插入图片描述在这里插入图片描述在这里插入图片描述

(10)登陆控制

登陆控制

5.本地用户的访问

(1)登陆控制

登陆控制
useradd westos
useradd lee
echo lee | passwd --stdin westos
echo lee | passwd --stdin lee
lftp 192.168.0.10 -u westos
local_enable=NO|YES

在这里插入图片描述
在这里插入图片描述

  anonymous_enable=YES|NO

(2)家目录控制

家目录控制

在这里插入图片描述在这里插入图片描述

 local_root=/software

(3)上传文件功能控制 (写权限控制)

上传文件权限控制(写权限控制)

在这里插入图片描述在这里插入图片描述

 write_enable=NO|YES

(4)上传文件权限控制

上传文件权限控制

在这里插入图片描述在这里插入图片描述

  local_umask=077

(5)用户登录黑白名单

用户登陆控制

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

在这里插入图片描述

  /etc/vsftpd/ftpusers ##永久黑
    /etc/vsftpd/user_list ##默认黑
用户登陆白名单
  userlist_deny=NO #设定/etc/vsftpd/user_list位白名单
                     #不在名单中的用户不能登陆ftp

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

锁定用户到自己的家目录中
chmod u-w /home/*
chroot_local_user=YES

在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述

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

锁定用户到自己的家目录中的黑名单
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

在这里插入图片描述在这里插入图片描述

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

锁定用户到自己的家目录中的白名单
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

在这里插入图片描述在这里插入图片描述

6.虚拟用户访问

(1)建立虚拟用户

①建立认证文件模板

在这里插入图片描述

vim /etc/vsftpd/ftp_auth_file #建立认证文件模板
westos1
123
westos2
123
westos3
123
 ②加密认证文件

在这里插入图片描述

  db_load -T -t hash -f ftp_auth_file ftp_auth_file.db ##加密认证文件 
                                                         ##-T 转换 -t type -f 指定转换文件
 ③认证策略文件

在这里插入图片描述
在这里插入图片描述

 vim /etc/pam.d/westos
    account required pam_userdb.so db=/etc/vsftpd/ftp_auth_file
    auth required pam_userdb.so db=/etc/vsftpd/ftp_auth_file
 ④配置文件中修改

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

vim /etc/vsftpd/vsftpd.conf
    pam_service_name=westos ##指定认证策略文件
    guest_enable=YES ##指定虚拟用户功能开启
    guest_username=ftp ##指定虚拟用户在ftp服务器上的用户身份
 ⑤测试

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

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

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

(3)虚拟用户配置独立

user_config_dir=/etc/vsftpd/user_config #在此目录中与用户名称相同的文件为用户配置文件
mkdir /etc/vsftpd/user_config
vim /etc/vsftpd/user_config/user1
anon_upload_enable=YES
设定完成后user1用户可以上传文件
user2不行

在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值