自建FTP共享资源之受欢迎的VSFTP
发布时间:2020-07-01 来源: 118云vps 阅读:
什么是FTP:
FTP就是文件传输协议。用于互联网双向传输,控制文件下载空间在服务器复制文件从本地计算机或本地上传文件复制到服务器上的空间。
什么是VSFTP:
VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件。
简单来说:
其实通俗的说FTP是一种数据传输协议,负责将我们电脑上的数据与服务器数据进行交换,比如我们要将在我们电脑中制作的程序或文件上传到服务器上就可以使用FTP工具,将数据从电脑传送到服务器。
FTP客户机可以给服务器发出命令来下载文件,上载文件,创建或改变服务器上的目录,一般我们均是将我们电脑中的内容与服务器数据进行性传输。
FTP服务器概念大家不要混淆掉了。我们可以再电脑中安装FTP工具负责将电脑中的数据传输到服务器当中,这服务器就称为FTP服务器,而我们的电脑称为客户端。简单的说FTP服务器就是一台存储文件的服务器,供用户上传或下载文件。
为什么?
VSFTP软件介绍:
安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。
在速度方面,使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。
在稳定方面,VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据Red Hat的Ftp服务器的数据,VSFTP服务器可以支持15000个并发用户。
vsftpd CVE列出的漏洞比ProFTPd和WU-FTPd少很多。因为它的名字就暗示它是一个安全的FTP服务,或因为它是被那么多的大型网站使用,有比别的软件更多的审查。
怎么用?
可能大家没接触过不好理解,接下来我们就一步步实施搭建一个VSFTPD服务
环境:
Linux系统 CentOS7
能联通公网
第一步:创建云主机能联网公网
ping www.eflycloud.com
firewall-cmd –state #查看防火墙是否有开启
第二步:查看是否有安装了vsftpd
rpm -qa|grep vsftp
安装vsftpd
yum install -y vsftpd
设置开机启动
systemctl enable vsftpd.service
启动
systemctl start vsftpd.service
停止
systemctl stop vsftpd.service
查看状态
systemctl status vsftpd.service
第三步:修改配置
打开配置文件
vim /etc/vsftpd/vsftpd.conf
显示行号
:set number
修改配置 12 行
anonymous_enable=NO #是否允许匿名用户登陆
修改配置 33 行
anon_mkdir_write_enable=YES #是否允许匿名用户用创建目录的写入权限
修改配置48行
chown_uploads=YES
是否修改匿名用户所上传文件的所有权。YES,匿名用户上传得文件所有权改为另一个不同的用户所有,用户由chown_username参数指定。
修改配置72行
async_abor_enable=YES
修改配置82行
ascii_upload_enable=YES #启用上传的ASCII传输方式
修改配置83行
ascii_download_enable=YES #启用下载的ASCII传输方式
修改配置86行
ftpd_banner=Welcome to blah FTP service. #设置用户连接服务器后显示消息
修改配置100行
chroot_local_user=YES #是否将所有用户限制在主目录,YES为启用 NO禁用
添加下列内容到vsftpd.conf末尾
use_localtime=YES #显示目录清单时是用本地时间还是GMT时间
listen_port=21 #绑定到某个端口
idle_session_timeout=300 #(用户会话空闲后5分钟)
guest_enable=YES # 启用虚拟用户。默认值为NO。
guest_username=vsftpd #这里用来映射虚拟用户。默认值为ftp。
user_config_dir=/etc/vsftpd/vconf #定义用户配置文件的目录
data_connection_timeout=1 # #(将数据连接空闲2分钟断)
virtual_use_local_privs=YES #当该参数激活(YES)时,虚拟用户使用与本地用户相同的权限。
pasv_min_port=40000 #pasv连接模式时可以使用port 范围的下界,0 表示任意
pasv_max_port=40010 #pasv连接模式时可以使用port 范围的上界,0 表示任意
accept_timeout=5 #(将客户端空闲1分钟后断)
connect_timeout=1 #(中断1分钟后又重新连接)
allow_writeable_chroot=YES
第四步:防火墙添加FTP服务
firewall-cmd —permanent —zone=public —add-service=ftp