
vsftpd(very secure FTP daemon)是Linux下的一款小巧轻快、安全易用的FTP服务器软件。今天飞飞将和你分享Linux系统安装并配置vsftpd,搭建FTP环境。
序列号 | CPU | RAM | HDD | 带宽 | 售价(美元) | 免费试用 |
---|---|---|---|---|---|---|
香港服务器1 | E5-2620 | 32G | 1T HDD | 50M/无限流量 | $196.00 | 立即申请 |
香港服务器2 | E5-2650 | 32G | 1T HDD | 50M/无限流量 | $256.00 | 立即申请 |
香港服务器3 | E5-2680 | 32G | 1T HDD | 50M/无限流量 | $316.00 | 立即申请 |
香港服务器4 | E5-2690 | 32G | 1T HDD | 50M/无限流量 | $336.00 | 立即申请 |
香港服务器5 | E5-2697 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器6 | E5-2620*2 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器7 | E5-2650*2 | 32G | 1T HDD | 50M/无限流量 | $436.00 | 立即申请 |
香港服务器8 | E5-2680*2 | 32G | 1T HDD | 50M/无限流量 | $476.00 | 立即申请 |
香港服务器9 | E5-2690*2 | 32G | 1T HDD | 50M/无限流量 | $556.00 | 立即申请 |
香港服务器10 | E5-2697*2 | 32G | 1T HDD | 50M/无限流量 | $596.00 | 立即申请 |
香港服务器11 | E5-2680v4*2 | 32G | 1T HDD | 50M/无限流量 | $696.00 | 立即申请 |
香港服务器12 | E5-2698v4*2 | 32G | 1T HDD | 50M/无限流量 | $796.00 | 立即申请 |
先让我们来认识下FTP吧!
FTP(FileTransferProtocol)是一种文件传输协议,基于客户端/服务器架构,支持以下两种工作模式:
主动模式:客户端向FTP服务器发送端口信息,由服务器主动连接该端口。
被动模式:FTP服务器开启并发送端口信息给客户端,由客户端连接该端口,服务器被动接受连接。
说明:大多数FTP客户端都在局域网中,没有独立的公网IP地址,且有防火墙阻拦,主动模式下FTP服务器成功连接到客户端比较困难。因此,如无特殊需求,建议您将FTP服务器配置为被动模式。
FTP支持以下三种认证模式:
匿名用户模式:任何人无需密码验证就可以直接登录到FTP服务器。这种模式最不安全,一般只用来保存不重要的公开文件,不推荐在生产环境中使用。
本地用户模式:通过Linux系统本地账号进行验证的模式,相较于匿名用户模式更安全。
虚拟用户模式:FTP服务器的专有用户。虚拟用户只能访问Linux系统为其提供的FTP服务,而不能访问Linux系统的其它资源,进一步增强了FTP服务器的安全性。
本文主要分享被动模式下,使用本地用户访问FTP服务器的配置方法。关于匿名模式的配置方式、第三方FTP客户端工具使用方式等。
分配了外网IP的云服务器或是物理服务器
操作系统:CentOS7.264位
vsftpd:3.0.2
当您使用不同软件版本时,可能需要根据实际情况调整命令和参数配置。
一、安装vsftpd
1、远程连接Linux实例。
2、运行以下命令安装vsftpd。
yuminstall-yvsftpd
出现如下图所示界面时,表示安装成功。
3、运行以下命令设置FTP服务开机自启动。
systemctlenablevsftpd.service
4、运行以下命令启动FTP服务。
systemctl start vsftpd.service
说明:执行该命令时如果提示错误信息Jobforvsftpd.servicefailedbecausethecontrolprocessexitedwitherrorcode,请排查是否存在下述问题。如果问题仍未解决,建议联系专业售后处理
·网络环境不支持IPv6时,运行命令vim/etc/vsftpd/vsftpd.conf将内容listen_ipv6=YES修改为listen_ipv6=NO。
·MAC地址不匹配时,运行命令ifconfig查看MAC地址,并在/etc/sysconfig/network-scripts/ifcfg-xxx配置文件中新增或修改HWADDR=
5、运行以下命令查看FTP服务监听的端口。
netstat-antup|grepftp
出现如下图所示界面,表示FTP服务已启动,监听的端口号为21。此时,vsftpd默认已开启匿名访问功能,您无需输入用户名密码即可登录FTP服务器,但没有修改或上传文件的权限。
二、配置vsftpd
为保证数据安全,本文主要介绍被动模式下,使用本地用户访问FTP服务器的配置方法。
1、运行以下命令为FTP服务创建一个Linux用户。本示例中,该用户名为ftptest。
adduserftptest
2、运行以下命令修改ftptest用户的密码。
passwdftptest
运行命令后,根据命令行提示完成FTP用户的密码修改。
3、运行以下命令创建一个供FTP服务使用的文件目录。
mkdir/var/ftp/test
4、运行以下命令,创建测试文件。
该测试文件用于FTP客户端访问FTP服务器时使用。
touch/var/ftp/test/testfile.txt
5、运行以下命令更改/var/ftp/test目录的拥有者为ftptest。
chown-Rftptest:ftptest/var/ftp/test
6、修改vsftpd.conf配置文件。
1)运行以下命令,打开vsftpd的配置文件。
如果您在安装vsftpd时,使用的是aptinstallvsftpd安装命令,则配置文件路径为/etc/vsftpd.conf。
vim/etc/vsftpd/vsftpd.conf
2)按i进入编辑模式。
3)配置FTP服务器为被动模式。
具体的配置参数说明如下:
注意:修改和添加配置文件内的信息时,请注意格式问题。例如,添加多余的空格会造成无法重启服务的结果。
#除下面提及的参数,其他参数保持默认值即可。
#修改下列参数的值:
#禁止匿名登录FTP服务器。
anonymous_enable=NO
#允许本地用户登录FTP服务器。
local_enable=YES
#监听IPv4sockets。
listen=YES
#在行首添加#注释掉以下参数:
#关闭监听IPv6sockets。
#listen_ipv6=YES
#在配置文件的末尾添加下列参数:
#设置本地用户登录后所在目录。
local_root=/var/ftp/test
#全部用户被限制在主目录。