Vsftpd服务的部署及优化

本文详细介绍了如何在Linux系统中安装与配置vsftpd服务,包括匿名用户访问控制、本地用户权限设定、防火墙配置以及虚拟用户的创建和独立家目录设定。通过实验环境展示了FTP服务的测试与访问,并提供了详细的配置步骤和参数解释,确保FTP服务的安全性和可控性。
摘要由CSDN通过智能技术生成

1.ftp介绍

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

实验环境:

server主机:服务器
westos_node1
172.25.254.140
selinux关闭 路径:/etc/sysconfig/selinux
火墙开启
dnf安装设定完成

client主机:客户端
westos_linux
172.25.254.40
selinux关闭
dnf安装设定完成
安装lftp #ftp协议文本浏览器

2.vsftpd安装及启用

安装vsftp服务,在这里我们同时在服务器上安装了lftp 方便后面测试

dnf install vsftpd -y			#server服务器
dnf install lftp -y			#client客户端

关闭selinux 路径:/etc/sysconfig/selinux
如图:改为 SELINUX=disabled
在这里插入图片描述
开启防火墙:
systemctl enable --now firewalld 开启防火墙
firewall-cmd --permanent --add-service=ftp 设置防火墙允许通过服务ftp

编辑服务器vsftpd.conf文件 给客户端设定访问权限
vim /etc/vsftpd/vsftpd.conf
在这里插入图片描述

anonymous_enable=YES ##启动匿名用户的访问功能

systemctl restart vsftpd

测试安装发布:
(1)在firefox中输入 ftp://172.25.254.140
在这里插入图片描述
(2)在客户端访问服务器 (注意:客户端必须安装了lftp访问)
lftp 172.25.254.140
此访问方式必须能列出资源才算访问成功
如图:
在这里插入图片描述

在使用完成后请输入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 ##本地用户访问

登陆控制
anonymous_enable=YES|NO

家目录控制
anon_root=/westosdir

上传控制
anon_upload_enable=YES|NO

chmod 775 /var/ftp/pub    给pub目录权限
chgrp ftp /var/ftp/pub    将pub目录的所有组改为ftp

在这里插入图片描述

目录建立控制
anon_mkdir_write_enable=YES|NO
在这里插入图片描述

下载控制
anon_world_readable_only=NO ##匿名用户可以下载不能读的文件
在这里插入图片描述

删除重命令控制
anon_other_write_enable=YES|NO
在这里插入图片描述

匿名用户上传文件权限设定
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

#########################

5.本地用户的访问

#########################
登陆控制——建立两个用户
useradd westos
useradd lee
echo lee | passwd --stdin westos 修改密码
echo lee | passwd --stdin lee
lftp 172.25.254.140 -u lee
确保在服务器文件上允许本地用户访问
local_enable=YES

其他权限设定

家目录控制:设置本地用户访问服务器时的默认家目录,用来控制他们所能访问到的最大目录
local_root=/software

写权限控制
write_enable=NO|YES

上传文件权限控制
local_umask=077

(1)用户登陆控制

/etc/vsftpd/ftpusers ##永久黑(这个文件中的用户永远不能访问ftp服务器)
/etc/vsftpd/user_list ##默认黑(userlist_deny=YES 不做更改的时候这个文件的用户默认是在黑名单中的)

(2)用户登陆白名单

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

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

chmod u-w /home/*
chroot_local_user=YES

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

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

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

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

6.虚拟用户访问

建立虚拟用户过程

(1)建立虚拟用户信息文件

c切换环境到 /etc/vsftpd/
建立一个文件westos_pam #建立认证文件
编写你所想要建立的虚拟用户信息:
user1 用户名
123 密码
user2
123
user3
123
在这里插入图片描述

(2)加密认证文件

db_load -T -t hash -f westos_pam westos_pam.db	 加密认证文件  
   (  -T 转换 -t type -f 指定转换文件)

3.在pam认证执行软件内编写认证流程
切换环境到 /etc/pam.d/ 建立文件westos 在此文件当中设定服务器在验证虚拟用户身份的流程

account         required        pam_userdb.so           db=/etc/vsftpd/westos_pam    账号
auth            required        pam_userdb.so           db=/etc/vsftpd/westos_pam    密码

在这里插入图片描述

(3)编写系统文件

vim /etc/vsftpd/vsftpd.conf (相当于和pam认证软件交界)

pam_service_name=westos                 指定认证策略文件
guest_enable=YES			            指定虚拟用户功能开启
guest_username=ftp		           	    指定虚拟用户在ftp服务器上的用户身份,也可以选择其他用户

在这里插入图片描述

systemctl restart vsftpd       重启服务


虚拟用户建立完毕,可以用user1 user2 user3 登陆

如果需要在目录中建立文件或者上传下载的时候,给所要上传的目录权限

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

给每个虚拟用户建立自己的家目录,提高安全性

mkdir  -p /ftphome/user{1..3}
touch  /ftphome/user1/westos1file
touch  /ftphome/user2/westos2file
touch  /ftphome/user3/westos3file

在这里插入图片描述
在文件中台添加信息:
vim /etc/vsftpd/vsftpd.conf

local_root=/ftphome/$USER   文件中设定虚拟用户的默认家目录
user_sub_token=$USER          与自动匹配建立联系

在这里插入图片描述

systemctl restart vsftpd       重启
独立设定家目录完成!!!

8.用户配置独立

user_config_dir=/etc/vsftpd/westos #在此目录中与用户名称相同的文件为用户配置文件
mkdir /etc/vsftpd/westos
建立相应文件,在文件内可以编写独立配置:
vim /etc/vsftpd/westos/user1 编写user1的独立配置 (可以匿名上传文件)

在这里插入图片描述这里为了与user2 user3 突出对比,应该在/etc/vsftpd/vsftpd.conf 中关掉匿名用户上传权限
在这里插入图片描述

在这里插入图片描述
设定完成后user1用户可以上传文件
user2和user3不行
在这里插入图片描述

至此vstpd服务的部署及优化就全部结束啦!!! 希望大家有可以借鉴的地方,一起加油吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值