linux下的ftp服务器及其管理

linux下的ftp服务器及其管理

1.FTP简介

FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。是互联网中最老牌的文件传输协议。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。

二、vsftpd安装

1.安装并开启ftp服务

#yum install vsftpd -y 	##需提前搭建好yum源
#systemctl start vsftpd
#systemctl enable vsftpd		##设置服务开机自启

2.配置selinux和firewalld。service

#vim /etc/sysconfig/selinux 		##disabled
#getenforce			##查看状态是否改变
r#eboot				##重启系统

在这里插入图片描述在这里插入图片描述
3测试安装发布:
firefox ftp://ip
lftp ip ##此访问方式必须能列出资源才算访问成功
lftp相当于一个浏览器用来检测在客户端能否列出服务端的资源
在这里插入图片描述

三.ftp服务的基本信息

软件安装包:vsftpd

默认发布目录:/var/ftp

协议接口:21/tcp

服务配置文件: /etc/vsftpd/vsftpd.conf

报错id解析:
id 含义
500 文件系统权限过大
530 用户认证失败
550 服务功能未开放
553 本地文件系统权限过小

四、匿名用户访问

匿名FTP

使用FTP时必须首先登录,在远程主机上获得相应的权限以后,方可下载或上传文件。也就是说,要想同哪一台计算机传送文件,就必须具有哪一台计算机的适当授权。换言之,除非有用户ID和口令,否则便无法传送文件。这种情况违背了Internet的开放性,Internet上的FTP主机何止千万,不可能要求每个用户在每一台主机上都拥有帐号。匿名FTP就是为解决这个问题而产生的。

当远程主机提供匿名FTP服务时,会指定某些目录向公众开放,允许匿名存取。系统中的其余目录则处于隐匿状态。作为一种安全措施,大多数匿名FTP主机都允许用户从其下载文件,而不允许用户向其上传文件,也就是说,用户可将匿名FTP主机上的所有文件全部拷贝到自己的机器上,但不能将自己机器上的任何一个文件拷贝至匿名FTP主机上。即使有些匿名FTP主机确实允许用户上传文件,用户也只能将文件上传至某一指定上传目录中。随后,系统管理员会去检查这些文件,他会将这些文件移至另一个公共下载目录中,供其他用户下载,利用这种方式,远程主机的用户得到了保护,避免了有人上传有问题的文件,如带病毒的文件

在访问ftp服务时没有加用户认证信息的为匿名访问。
通过修改主配置文件/etc/vsftpd/vsftpd.conf中的内容来控制匿名用户访问的规则,在修改完配置文件后需要重启服务systemctl restart vsftpd

登陆控制
anonymous_enable=YES|NO

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

家目录控制
anon_root=/software
上传控制
anon_upload_enable=YES|NO

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

chmod 777 /var/ftp/pub lftp 192.168.0.10 cd pub put /etc/passwd

下载控制
anon_world_readable_only=NO

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

目录建立控制
anon_mkdir_write_enable=YES|NO

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

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

在这里插入图片描述

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

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

登陆数量控制:
max_clients=2

在这里插入图片描述

上传速率控制
anon_max_rate=102400

在这里插入图片描述

五、本地用户访问

登陆控制 
lftp	192.168.0.10 -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.虚拟用户访问

本地用户是指在系统中真实存在的用户,使用用户名称和密码可以登录系统。基于vsftpd服务,系统用户访问FTP服务器时,系统用户越多越不利于管理。而虚拟用户不是系统中真实存在的用户,只是在使用ftp服务时建立的用户并且设置相应的权限来实现访问验证。虚拟用户不能登录Linux系统,从而让系统更加的安全可靠
1.ftp虚拟用户的设定,创建虚拟帐号身份

1.vim /etc/vsftpd/ftp_auth_file westos1	#建立认证文件模板
123
 westos2
123 
westos3
123

在这里插入图片描述
步骤二:对 /etc/vsftpd/v_users 文件进行加密

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

步骤三:将加密文件v_users.db 指定到策略文件中

3.vim /etc/pam.d/westos		
account	required
ftp_auth_file	pam_userdb.so	db=/etc/vsftpd/
auth	required
ftp_auth_file	pam_userdb.so	db=/etc/vsftpd/

在这里插入图片描述

vsftpd主配置文件,更改认证方式

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不行

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值