3.1 vsftpd服务的部署及优化

FTP

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

ftp的安装及启用

服务端安装vsftp

dnf install vsftpd.x86_64 -y					#安装服务端
dnf install lftp.x86_64 -y						#安装客户端

关闭selinux:

vim /etc/sysconfig/selinux
**********************************************************************
  1 
  2 # This file controls the state of SELinux on the system.
  3 # SELINUX= can take one of these three values:
  4 #     enforcing - SELinux security policy is enforced.
  5 #     permissive - SELinux prints warnings instead of enforcing.
  6 #     disabled - No SELinux policy is loaded.
  7 SELINUX=disabled

启动ftp服务:

systemctl enable --now vsftpd					#设置vsftp开启启动并且立即启动

防火墙放行:

firewall-cmd --permanent --add-service=ftp		#永久放行ftp服务
firewall-cmd --reload							#防火墙刷新
vsftp基本信息

服务名称:vsftpd.service

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

默认发布目录:/var/ftp/

报错信息:

错误代码错误描述
550程序本身拒绝
553文件系统权限限制
500权限过大
530认证失败
匿名用户访问控制
lftp 172.25.254.124 -u song						#本地用户登陆
lftp 172.25.254.124								#匿名用户登陆

通过修改配置文件来控制匿名用户访问:

vim /etc/vsftpd/vsftpd.conf

登陆控制

anonymous_enable=YES|NO

在这里插入图片描述

家目录控制:

anon_root=/songdir

在这里插入图片描述

上传控制:

anon_upload_enable=YES|NO

在这里插入图片描述

上传报错553是因为/var/ftp/只能被root上传及删除文件

需要修改权限才能使匿名用户上传文件:

chmod 755 /var/ftp/pub
chgrp ftp /var/ftp/pub

在这里插入图片描述

在这里插入图片描述

目录建立控制:

anon_mkdir_write_enable=YES

在这里插入图片描述

在这里插入图片描述

删除命令控制:

anon_other_write_enable=YES|NO

在这里插入图片描述

在这里插入图片描述

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

anon_umask=xxx		#当设定chown_username后上传文件权限不使用此参数

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

上传文件时以指定用户身份上传

chown_uploads=YES
chown_username=song
chown_upload_mode=0644

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

登陆数量控制:

max_clients=n

上传速率控制:

anon_max_rate=102400		#大小单位为字节102400表示1024k

在这里插入图片描述

在这里插入图片描述

本地用户的访问控制
本地用户登录
lftp 172.25.254.170 -u song						#本地用户登陆

通过修改配置文件来控制匿名用户访问:

vim /etc/vsftpd/vsftpd.conf

登陆控制

local_enable=YES

家目录控制:
YES

local_root=/songdir

写权限控制

write_enable=YES

上传文件权限

local_umask=022

在这里插入图片描述

用户登录控制

vim /etc/vsftpd/ftpusers						#永久黑名单
vim /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

在这里插入图片描述

虚拟用户访问

建立虚拟用户过程

vim /etc/vsftpd/ftp_auth_file						#建立认证文件
************************************************************************
song1
123
song2
123
song3
123

在这里插入图片描述

db_load -T -t hash -f /etc/vsftpd/ftp_auth_file /etc/vsftpd/ftp_auth_file.db
													#加密认证文件

在这里插入图片描述

vim /etc/pam.d/song 

在这里插入图片描述

vim /etc/vsftpd/vsftpd.conf

在这里插入图片描述
在这里插入图片描述
虚拟用户家目录的独立设定

mkdir  -p /ftpuserdir/song{1..3}
touch  /ftpuserdir/song1/song1file
touch  /ftpuserdir/song2/song2file
touch  /ftpuserdir/song3/song3file
vim /etc/vsftpd/vsftpd.conf

在这里插入图片描述
用户配置独立

vim /etc/vsftpd/vsftpd.conf
************************************************************************
user_config_dir=/etc/vsftpd/user_config				#在此目录中与用户名称相同的文件为用户配置文件
mkdir /etc/vsftpd/user_config
vim /etc/vsftpd/user_config/song2
************************************************************************
anon_upload_enable=YES

设定完成后song2用户可以上传文件,song1和song3不能上传

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值