Linux下安装vsftpd

简介: Linux下安装vsftpd

一、vsftpd简介


安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。


在速度方面,使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。

在稳定方面,VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据Red Hat的Ftp服务器的数据,VSFTP服务器可以支持15000个并发用户


特点:


1、它是一个安全、高速、稳定的FTP服务器;
2、它可以做基于多个IP的虚拟FTP主机服务器;
3、匿名服务设置十分方便;
4、匿名FTP的根目录不需要任何特殊的目录结构,或系统程序或其它的系统文件;
5、不执行任何外部程序,从而减少了安全隐患;
6、支持虚拟用户,并且每个虚拟用户可以具有独立的属性配置;
7、可以设置从inetd中启动,或者独立的FTP服务器两种运行方式;
8、支持两种认证方式(PAP或xinetd/ tcp_wrappers);
9、支持带宽限制;


好了,以上就是官方的一些介绍,可以了解一下。我们平时的使用场景可能是公司需要,比如搭建一个vsftp服务,员工们上传下载文件,或者自己使用。主要就是用来做文件上传下载。


二、vsftpd搭建


1、查看自己的linux版本


有的属于6系列,目前是最新版本是7系列。由于7系列在一些命令上有了变化,所以需要你确认自己是6/7系列。


比如:防火强命令firewall,systemctl命令等等


2、查看是否安装vsftp并使用yum安装


看一下自己是否安装了vsftp服务,如果安装了,可以卸载或者继续搭建


rpm -qa | grep vsftpd


使用yum安装


yum -y install vsftpd


image.png


1.png


这样表示安装成功。(图例是找的一张,我安装的是vsftpd-3.0.2-22.el7.x86_64版本)

验证是否安装成功


rpm -qa vsftpd


3、vsftp配置


安装已经成功,接下来就需要进行配置了。查看vsftp相关的配置文件


ll /etc/vsftpd/


image.png

image.png


userconfig文件夹是我后来自己创建的。


下面说一下vsftpd.conf配置文件的配置,我只说一下没有注释的和我新增的配置项:


anonymous_enable=NO #是否允许匿名用户登录YES/NO
local_enable=YES #是否允许本地用户登录YES/NO
write_enable=YES #是否允许本地用户对FTP服务器文件具有写权限YES/NO
local_root=/home/wwwroot/ #为不同用户设置不同的ftp根目录
chroot_local_user=YES #锁定用户到各自目录为其根目录YES/NO
allow_writeable_chroot=YES #各用户是否可以上传下载YES/NO
user_config_dir=/etc/vsftpd/userconfig #用户配置目录,这就是我新建的那个文件夹
local_umask=022 #设置本地用户的文件掩码为缺省022,也可根据个人喜好将其设置为其他值
dirmessage_enable=YES # 是否激活目录欢迎信息功能YES/NO
xferlog_enable=YES #是否让系统自动维护上传和下载的日志文件默认情况该日志文件为/var/log/vsftpd.log,也可以通过下面的xferlog_file选项对其进行设定YES/NO
connect_from_port_20=YES #是否设定FTP服务器将启用FTP数据端口的连接请求YES/NO
xferlog_std_format=YES #是否以标准xferlog的格式书写传输日志文件YES/NO
ascii_upload_enable=YES #是否以ASCII方式上传数据YES/NO
ascii_download_enable=YES #是否以ASCII方式下载数据YES/NO
listen=YES #是否允许监听新的端口YES/NO
#listen_ipv6=YES #此项很重要,记得注释
pam_service_name=vsftpd #
userlist_enable=YES #设置是否阻扯user_list文件中的用户登录FTP服务器,默认为YES
tcp_wrappers=YES #是否使用tcp_wrappers作为主机访问控制方式
userlist_deny=NO #当userlist_enable为YES,userlist_deny为NO时,FTP服务器仅允许user_list中的用户访问
listen_port=6666 #监听一个新的端口6666
#修改ftp默认的21端口,数字随意,只要在1024-65535之内就行(1024以下是系统保留的,从1024-65535是用户使用的)


我们通常想要的是,某个用户登录之后可以直接访问到我们给他指定的目录,也就是用户自己的根目录,所以我在上边配置了不同用户的根目录。接下来需要配置用户。

先创建一个用户:


useradd testftp
passwd testftp


设置完密码这个用户就生成了,现在去配置vsftp中该用户的根目录


cd /etc/vsftpd/
mkdir userconfig
vim testftp


这个时候在里面配置一下testftp用户自己根目录:


local_root=/home/wwwroot/testftp/


注意:你的/home/wwwroot/testftp/这个文件夹必须存在哦!这个时候已经为testftp用户设置好了自己连接后的根目录,你还需要将:/etc/vsftpd/user_list文件中的其他用户都删除,只添加一个testftp


4、配置selinux


那个就ok了,现在还需要配置一下selinux

vim /etc/sysconfig/selinux

将SELINUX=enforcing改为SELINUX=disabled


image.png


5、启动vsftp服务


还是因为7系列,所以启动命令是:


systemctl start vsftpd


6、连接测试


ok,现在vsftp搭建和配置已经完成了,可以连接了。按照以上配置的话


ip:你的服务器ip
端口:6666
用户名:testftp
密码:testftp


多说一句,如果你启动的时候报错:


Restarting vsftpd (via systemctl): Job for vsftpd.service failed because the control……


这个就是因为vsftpd.conf中的:listen_ipv6=YES没有注释造成,因为我们目前的网络环境还不支持ipv6,改为listen_ipv6=NO或者注释,重启即可。



相关文章
|
1月前
|
Linux
手把手教会你安装Linux系统
手把手教会你安装Linux系统
|
1月前
|
安全 关系型数据库 MySQL
Linux下安装mysql8.0(以tar.xz包安装--编译安装)
通过上述步骤,您完成了从下载、编译、安装到配置MySQL 8.0的全过程。此过程虽然较为复杂,但提供了对MySQL安装环境的完全控制,有助于满足特定的部署需求。在实际操作中,根据具体的系统环境,可能还需调整部分步骤或解决未预见的依赖问题。始终参考官方文档和社区资源,保持安装过程与最新版本的兼容性。
655 67
|
25天前
|
Linux 测试技术 网络安全
Linux系统之安装OneNav个人书签管理器
【10月更文挑战第19天】Linux系统之安装OneNav个人书签管理器
41 5
Linux系统之安装OneNav个人书签管理器
|
27天前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
50 5
Linux系统之安装Ward服务器监控工具
|
9天前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
24 5
|
29天前
|
JSON JavaScript Linux
Linux系统之安装cook菜谱工具
【10月更文挑战第15天】Linux系统之安装cook菜谱工具
35 2
Linux系统之安装cook菜谱工具
|
1月前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
121 4
Linux系统之Ubuntu安装cockpit管理工具
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
69 1
Linux系统之Centos7安装cockpit图形管理界面
|
1月前
|
存储 Oracle 关系型数据库
|
1月前
|
Linux Shell 异构计算
在linux上部署yolov5和安装miniconda3
这篇文章介绍了在Linux系统上部署YOLOv5并安装Miniconda3的步骤,包括使用wget命令下载Miniconda安装脚本、安装Miniconda、初始化Conda环境、添加镜像源等。
76 3
在linux上部署yolov5和安装miniconda3