vsftpd服务部署

· 文件传输协议

一般来讲,人们把计算机联网的首要目的就是获取资料,而文件传输是一种非常重要的获取资料的方式。今天的互联网是由几千万台个人计算机、工作站、服务器、小型机、大型机、巨型机等具有不同型号、不同架构的物理设备共同组成的,而且即便是个人计算机,也可能会装有Windows、Linux、UNIX、Mac等不同的操作系统。为了能够在如此复杂多样的设备之间解决问题解决文件传输问题,文件传输协议应运而生

FTP(File Transfer Protocol)文件传输协议

FTP是一种在互联网中进行文件传输的协议,基于客户端/服务器模式,默认使用20、21号端口,其中端口20用于进行数据传输,端口21用于接受客户端发出的相关FTP命令与参数

FTP服务器普遍部署于内网中,具有容易搭建、方便管理的特点。而且有些FTP客户端工具还可以支持文件的多点下载以及断点续传技术,因此得到了广大用户的青睐
在这里插入图片描述
FTP服务器是按照FTP协议在互联网上提供文件存储和访问服务的主机,FTP客户端则是向服务器发送连接请求,以建立数据传输链路的主机

FTP协议有下面两种工作模式
主动模式:FTP服务器主动向客户端发起连接请求。
被动模式:FTP服务器等待客户端发起连接请求(默认工作模式)


TFTP(Trivial File Transfer Protocol)简单文件传输协议

TFTP是一个传输文件的简单协议,它基于UDP协议而实现,端口号为69

TFTP设计的时候是进行小文件传输的。因此它不具备通常的FTP的许多功能,它只能从文件服务器上获得或写入文件,不能列出目录,不进行认证,它传输8位数据
在这里插入图片描述
TFTP传输中有三种模式:
netascii:这是8位的ASCII码形式,
octet:这是8位源数据类型
mail:已经不再支持,它将返回的数据直接返回给用户而不是保存为文件

· vsftpd服务介绍

vsftpd(very secure ftp daemon,非常安全的FTP守护进程)是一款运行在Linux操作系统上的FTP服务程序,不仅完全开源而且免费,此外,还具有很高的安全性、传输速度,以及支持虚拟用户验证等其他FTP服务程序不具备的特点。在不影响使用的前提下,能够让管理者自行决定是公开匿名、本地用户还是虚拟用户的验证方式
在这里插入图片描述

· vsftpd服务部署

vsftpd(very secure ftp daemon,非常安全的FTP守护进程):是一款运行在Linux操作系统上的FTP服务程序,不仅完全开源而且免费,此外,还具有很高的安全性、传输速度,以及支持虚拟用户验证等其他FTP服务程序不具备的特点

1.安装vsftpd服务

[root@xiudaochengxian ~]# yum -y install vsftpd
Complete!

2.修改防火墙策略

#清空防火墙默认策略
[root@xiudaochengxian ~]# iptables -F	
#保存防火墙状态
[root@xiudaochengxian ~]# iptables-save 
#把FTP协议添加到允许列表中
[root@xiudaochengxian ~]# firewall-cmd --permanent --zone=public --add-service=ftp 
success
[root@xiudaochengxian ~]# firewall-cmd --reload 
success

3.编写vsftpd主配置文件

文件总共127行,大部分为注释信息,修改后为13行

#备份配置文件
[root@xiudaochengxian ~]# mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_bak	
#过滤后写入配置文件
[root@xiudaochengxian ~]# grep -Ev "^$|^#" /etc/vsftpd/vsftpd.conf_bak > /etc/vsftpd/vsftpd.conf	
#查看文件内容
[root@xiudaochengxian ~]# cat /etc/vsftpd/vsftpd.confanonymous_enable=YES
anonymous_enable=YES	#是否允许匿名用户访问权限(默认YES)
local_enable=YES	#是否允许本地用户进行访问(默认YES)
write_enable=YES	#是否允许本地用户进行写入操作(默认YES)
local_umask=022		#本地用户上传文件的umask值
dirmessage_enable=YES	#首次进入目录时的提示信息(默认YES)
xferlog_enable=YES		#是否开启日志功能(默认YES)
connect_from_port_20=YES	#是否以指定使用FTP端口号进行数据传输(默认YES)
xferlog_std_format=YES		#是否已标准形式写入日志(默认NO)
listen=NO		#是否以独立运行的方式监听服务(默认YES)
listen_ipv6=YES		#是否支持ipv6的IP地址
pam_service_name=vsftpd		#vsftpd使用的PAM模块(虚拟用户使用的PAM认证方式)
userlist_enable=YES		#设置用户列表为允许操作(默认NO)
tcp_wrappers=YES	#是否受到tcp wrapper来进行主机的访问控制限制(默认YES)
常用参数 作用
listen=[YES|NO] 是否以独立运行的方式监听服务
listen_address=IP地址 设置要监听的IP地址
listen_port=21 设置FTP服务的监听端口
download_enable=[YES|NO] 是否允许下载文件
userlist_deny=[YES|NO] 设置用户列表为“允许”还是“禁止”操作
max_clients=0 最大客户端连接数,0为不限制
max_per_ip=0 同一IP地址的最大连接数,0为不限制
anonymous_enable=[YES|NO] 是否允许匿名用户访问
anon_upload_enable=[YES|NO] 是否允许匿名用户上传文件
anon_umask=022 匿名用户上传文件的umask值
anon_root=/var/ftp 匿名用户的FTP根目录
anon_mkdir_write_enable=[YES|NO] 是否允许匿名用户创建目录
anon_max_rate=0 匿名用户的最大传输速率(字节/秒),0为不限制
local_enable=[YES|NO] 是否允许本地用户登录FTP
anon_other_write_enable=[YES|NO] 是否开放匿名用户其他写入权限(包括重命名、删除等操作权限)
local_umask=022 本地用户上传文件的umask值
local_root=/var/ftp 本地用户的FTP根目录
chroot_local_user=[YES|NO] 是否将用户权限禁锢在FTP目录,以确保安全
local_max_rate=0 本地用户最大传输速率(字节/秒),0为不限制

· vsftpd三种认证模式

vsftpd作为更加安全的文件传输协议服务程序,允许用户以三种认证模式登录到FTP服务器上

编辑防火墙策略

#清空防火墙默认策略
[root@xiudaochengxian ~]# iptables -F	
#保存防火墙状态
[root@xiudaochengxian ~]# iptables-save 
#把FTP协议添加到允许列表中
[root@xiudaochengxian ~]# firewall-cmd --permanent --zone=public --add-service=ftp 
success
[root@xiudaochengxian ~]# firewall-cmd --reload 
success

配置匿名访问模式

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值