3_1.vsftpd服务的部署及优化

vsftpd服务的部署及优化

  • 实验环境
  • 一、ftp介绍及vsftpd安装及启用
    • 1.**ftp:file transfer proto**(文件传输协议)
    • 2.vsftpd安装及启用
    • 3.允许匿名用户访问(登陆控制)
  • 二、vsftpd基本信息
  • 三、匿名用户访问控制
    • 1.修改匿名用户家目录
    • 2.匿名用户上传控制
    • 3.匿名用户目录建立控制
    • 4.匿名用户删除控制
    • 5.匿名用户下载配置
    • 6.匿名用户上传权限设置
    • 7.匿名用户上传文件的用户身份设定及权限设定
    • 8.登陆数量控制
  • 四、本地用户访问控制
    • 1.登陆控制
    • 2.本地用户家目录控制
    • 3.写权限控制
    • 4.上传文件权限控制
    • 5.用户登陆黑白名单
    • 6.锁定本地用户到自己的家目录
  • 五、虚拟用户访问
    • 1.建立虚拟用户
      • 1)建立认证模板
      • 2)加密认证文件
      • 3 )认证策略文件
      • 4)配置文件中修改
      • 5)验证
    • 2.虚拟用户独立分配家目录
    • 3.虚拟用户配置独立

实验环境

server主机:

服务器主机名:	westos_node1
IP:		172.25.254.100
			关闭selinux。否则会影响实验结果
			火墙开启
			dnf安装设定完成

client主机

客户机名:	westos_linux
IP:		172.25.254.250
			selinux关闭
			dnf安装设定完成
			安装lftp(这是ftp协议文本浏览器是一个软件)

关闭selinux操作

vim /etc/sysconfig/selinux #修改selinux配置文件
SELINUX=disabled			#将该参数修改为disable,即设置开机不启动selinux
getenforce  #查看selinux是否关闭
reboot 	##设置完成后需要重启

一、ftp介绍及vsftpd安装及启用

1.ftp:file transfer proto(文件传输协议)

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

2.vsftpd安装及启用

dnf install vsftpd -y		
dnf install lftp -y
systemctl enable --now vsftpd		#vsftod服务开机后启动,并现在启动
firewall-cmd --permanent --add-service=ftp	#允许火墙通过ftp协议访问系统
firewall-cmd --reload 

3_1.vsftpd服务的部署及优化_第1张图片
3_1.vsftpd服务的部署及优化_第2张图片
3_1.vsftpd服务的部署及优化_第3张图片3_1.vsftpd服务的部署及优化_第4张图片

3.允许匿名用户访问(登陆控制)

3_1.vsftpd服务的部署及优化_第5张图片
3_1.vsftpd服务的部署及优化_第6张图片
3_1.vsftpd服务的部署及优化_第7张图片3_1.vsftpd服务的部署及优化_第8张图片

二、vsftpd基本信息

服务名称:
vsftpd.service
配置目录:
/etc/vsftpd
主配置文件:
/etc/vsftpd/vsftpd.conf
默认发布目录:(也就是匿名用户访问时的默认目录)
/var/ftp
报错信息
550 程序本身拒绝
553 文件系统权限限制
500 权限过大
530 认证失败

三、匿名用户访问控制

1.修改匿名用户家目录

3_1.vsftpd服务的部署及优化_第9张图片
3_1.vsftpd服务的部署及优化_第10张图片3_1.vsftpd服务的部署及优化_第11张图片3_1.vsftpd服务的部署及优化_第12张图片3_1.vsftpd服务的部署及优化_第13张图片

2.匿名用户上传控制

anon_upload_enable=YES|NO #YES为允许匿名用户上传
3_1.vsftpd服务的部署及优化_第14张图片
下图是配置文件修改信息
3_1.vsftpd服务的部署及优化_第15张图片

3.匿名用户目录建立控制

3_1.vsftpd服务的部署及优化_第16张图片

3_1.vsftpd服务的部署及优化_第17张图片

4.匿名用户删除控制

man 5 vsftpd.conf #查看配置文件的帮助信息

3_1.vsftpd服务的部署及优化_第18张图片
3_1.vsftpd服务的部署及优化_第19张图片

5.匿名用户下载配置

3_1.vsftpd服务的部署及优化_第20张图片3_1.vsftpd服务的部署及优化_第21张图片配置如下
3_1.vsftpd服务的部署及优化_第22张图片

6.匿名用户上传权限设置

3_1.vsftpd服务的部署及优化_第23张图片
现在修改匿名用户上传文件的默认权限

3_1.vsftpd服务的部署及优化_第24张图片
3_1.vsftpd服务的部署及优化_第25张图片

7.匿名用户上传文件的用户身份设定及权限设定

3_1.vsftpd服务的部署及优化_第26张图片配置文件设定如下

3_1.vsftpd服务的部署及优化_第27张图片3_1.vsftpd服务的部署及优化_第28张图片

8.登陆数量控制

3_1.vsftpd服务的部署及优化_第29张图片在这里插入图片描述

3_1.vsftpd服务的部署及优化_第30张图片## 9.上传速率控制
3_1.vsftpd服务的部署及优化_第31张图片3_1.vsftpd服务的部署及优化_第32张图片

3_1.vsftpd服务的部署及优化_第33张图片

四、本地用户访问控制

1.登陆控制

登陆控制
useradd westos      ##添加用户并修改用户密码
useradd lee
echo lee | passwd --stdin westos
echo lee | passwd --stdin lee

lftp 192.168.0.10 -u westos  #westos用户访问

 vim /etc/vsftpd/vsftpd.conf  #本地用户访问权限设定
local_enable=NO|YES

3_1.vsftpd服务的部署及优化_第34张图片3_1.vsftpd服务的部署及优化_第35张图片3_1.vsftpd服务的部署及优化_第36张图片

2.本地用户家目录控制

local_root=/指定目录

3_1.vsftpd服务的部署及优化_第37张图片

3_1.vsftpd服务的部署及优化_第38张图片
3_1.vsftpd服务的部署及优化_第39张图片

3.写权限控制

write_enable=NO|YES

3_1.vsftpd服务的部署及优化_第40张图片

4.上传文件权限控制

3_1.vsftpd服务的部署及优化_第41张图片

3_1.vsftpd服务的部署及优化_第42张图片

5.用户登陆黑白名单

本地用户黑白名单
/etc/vsftpd/   #在该目录下
ftpusers    #永久黑名单,在该名单下的用户不能登陆ftp
user_list   #临时黑名单,在该名单下的用户不能登陆ftp,可以修改参数变为白名单

3_1.vsftpd服务的部署及优化_第43张图片永久黑名单中添加本地用户lee
3_1.vsftpd服务的部署及优化_第44张图片
3_1.vsftpd服务的部署及优化_第45张图片把临时黑名单变为白名单

userlist_enable=YES   #允许功能打开
userlist_deny=NO     #禁止功能打开
修改完就会变成白名单
3_1.vsftpd服务的部署及优化_第46张图片3_1.vsftpd服务的部署及优化_第47张图片
当本地用户白名单出现时,只有白名单中的用户可以访问,其他本地用户和匿名用户都不可以访问

6.锁定本地用户到自己的家目录

3_1.vsftpd服务的部署及优化_第48张图片3_1.vsftpd服务的部署及优化_第49张图片3_1.vsftpd服务的部署及优化_第50张图片

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

vim /etc/vsftpdchroot_list		#文件不存在,需要自己创建,并添加用户

3_1.vsftpd服务的部署及优化_第51张图片3_1.vsftpd服务的部署及优化_第52张图片
将上面的参数改成下面,就会变成黑名单,名单中的本地用户被锁定到家目录中

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

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

3_1.vsftpd服务的部署及优化_第53张图片

3_1.vsftpd服务的部署及优化_第54张图片

五、虚拟用户访问

因为本地用户的权限太大,除了ftp程序可以应用外,其他程序也可以应用,所以需要建立虚拟用户
建立虚拟用户过程

1.建立虚拟用户

1)建立认证模板

vim /etc/vsftpd/users

user1
123
user2
123
user3
123

3_1.vsftpd服务的部署及优化_第55张图片

2)加密认证文件

[root@westoslinux100 vsftpd]# db_load -T -t hash -f users users.db ##加密认证文件 -T 转换 -t type -f 指定转换文件
(find / -name pam_userdb.so 这是一个插件,相当于门卫大爷,进行匹配审核)

3_1.vsftpd服务的部署及优化_第56张图片

3 )认证策略文件

vim /etc/pam.d/authfil 
account		required	pam_userdb.so	db=/etc/vsftpd/users
auth		required 	pam_userdb.so   db=/etc/vsftpd/user

3_1.vsftpd服务的部署及优化_第57张图片

4)配置文件中修改

vim /etc/vsftpd/vsftpd.conf


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

3_1.vsftpd服务的部署及优化_第58张图片
3_1.vsftpd服务的部署及优化_第59张图片

5)验证

3_1.vsftpd服务的部署及优化_第60张图片

2.虚拟用户独立分配家目录

#创建不同的家目录并作标记文件
[root@westoslinux ~]#mkdir -p /ftphome/user{1..3}/pub
[root@westoslinux ~]# touch /ftphome/user1/user1file
[root@westoslinux ~]# touch /ftphome/user2/user2file
[root@westoslinux ~]# touch /ftphome/user3/user3file

vim /etc/vsftpd/vsftpd.conf  #修改配置文件,给虚拟用户分配家目录
local_root=/ftphome/$USER
139 user_sub_token=$USER


[root@westoslinux userconf]# systemctl restart vsftpd.service  #重启服务

3_1.vsftpd服务的部署及优化_第61张图片
3_1.vsftpd服务的部署及优化_第62张图片
3_1.vsftpd服务的部署及优化_第63张图片

3.虚拟用户配置独立

vim /etc/vsftpd/vsftpd.conf  #修改配置文件,在配置文件中将匿名用户的权限全部关闭

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

chgrp ftp /ftphome/user{1..3}/pub	#修改家目录的所有组,和权限,为了能上传文件
chmod 775 /ftphome/user{1..3}/pub

[root@westoslinux userconf]# vim /etc/vsftpd/userconf/user1
[root@westoslinux userconf]# cat /etc/vsftpd/userconf/user1
anon_upload_enable=YES   #允许用户user1上传文件
[root@westoslinux userconf]# systemctl restart vsftpd.service  #重启服务
![在这里插入图片描述](https://img-blog.csdnimg.cn/e5c9ebf2136c45408f8aa9e53a025e6e.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5aSa5LqO5bCR55qE5Yy65Yir,size_20,color_FFFFFF,t_70,g_se,x_16)

3_1.vsftpd服务的部署及优化_第64张图片
3_1.vsftpd服务的部署及优化_第65张图片
3_1.vsftpd服务的部署及优化_第66张图片3_1.vsftpd服务的部署及优化_第67张图片

3_1.vsftpd服务的部署及优化_第68张图片
实验
3_1.vsftpd服务的部署及优化_第69张图片

你可能感兴趣的:(Linux,linux,运维,服务器)