搭建FTP服务器

2023-08-22 5400阅读

vsftpd(非常安全的FTP守护进程)是Linux操作系统下的一个小型、轻量、安全且易于使用的FTP服务器软件。 本文介绍如何在Linux服务器上安装和配置vsftpd,并测试连接到FTP服务器。

搭建FTP服务器 第1张
()

前提条件

Linux轻量级应用服务器已经搭建完毕。 详细信息请参见。

背景资料

FTP(File Transfer Protocol)是一种基于客户端/服务器架构的文件传输协议,支持以下两种工作模式:

FTP支持以下三种认证方式:

本文主要介绍配置简单的匿名用户模式和更加安全的本地用户模式。

第1步:准备工作

本文将使用FTP客户端工具FileZilla连接FTP服务器,因此需要完成以下准备工作:

在本地主机上,下载并安装 FileZilla。

具体下载地址请参见FileZilla下载中心。

设置Linux服务器的用户密码。

搭建FTP服务器 第2张

详细信息请参见。

第2步:安装并配置vsftpd

远程连接Linux服务器。

详细信息请参见。

执行以下命令检查轻量级服务器是否已安装vsftpd。

一些使用应用镜像部署的轻量级应用服务器预装了vsftpd慈云数据自营海外云服务器,高稳定高性价比,支持弹性配置,如果再次安装可能会产生冲突。

vsftpd -v

如果回显信息类似如下,则说明当前轻量级应用服务器已经安装了vsftpd,无需再次安装。 您可以参考应用镜像文档获取FTP用户名和密码,然后进行。

[admin@iZ2579sxicu**** ~]$ vsftpd -v
vsftpd: version 3.0.2

运行以下命令安装 vsftpd。

搭建FTP服务器 第3张

sudo yum install -y vsftpd

如果出现下图所示信息,则说明vsftpd安装成功。

执行以下命令,将FTP服务设置为开机自动启动。

sudo systemctl enable vsftpd.service

运行以下命令启动FTP服务。

sudo systemctl start vsftpd.service

阐明

如果FTP无法启动写软件云服务器配置,并提示“Job for vsftpd.service failed because the control process exited with error code”,请检查21端口是否被占用。

使用lsof -i:21命令检查是否有进程。

搭建FTP服务器 第4张

如果有进程,使用kill -9命令杀死该进程。

执行以下命令,查看FTP服务的端口号。

sudo netstat -antup | grep ftp

如下图所示,可以查看FTP服务的端口号,说明该服务已经正常启动。

第三步:设置FTP服务器的访问模式

您可以选择以下任意一种方式来搭建FTP服务器,建议您使用更加安全的本地用户模式。

本地用户模式(推荐)

执行以下命令,创建FTP服务的Linux用户。

在此示例中,用户名为 ftptest。

搭建FTP服务器 第5张

sudo adduser ftptest

执行以下命令,修改ftptest用户的密码。

sudo passwd ftptest

执行该命令后,根据命令提示符修改FTP用户的密码。

执行以下命令,创建FTP服务的文件目录。

sudo mkdir /var/ftp/test

执行以下命令,将/var/ftp/test目录的所有者更改为ftptest。

sudo chown -R ftptest:ftptest /var/ftp/test

修改vsftpd.conf配置文件。

执行以下命令修改配置文件/etc/vsftpd/vsftpd.conf。

如果安装vsftpd时使用apt install vsftpd安装命令,则配置文件路径为/etc/vsftpd.conf。

sudo vim /etc/vsftpd/vsftpd.conf

按 i 进入编辑模式。

将FTP服务器配置为被动模式。

具体配置参数说明如下。 除下面提到的参数外,其他参数保持默认值即可。

重要的

将以下参数复制粘贴到Linux服务器的配置文件中时,请注意参数不要用#注释掉。 另外写软件云服务器配置,请注意格式问题。 例如,添加额外的空格可能会导致无法重新启动服务。

修改以下参数的值:

#禁止匿名登录FTP服务器。
anonymous_enable=NO
#允许本地用户登录FTP服务器。
local_enable=YES
#监听IPv4 sockets。
listen=YES

在行首添加 # 注释掉以下参数,以关闭监听的 IPv6 套接字:

#listen_ipv6=YES

在配置文件末尾添加以下参数,其中pasv_address参数需要替换为轻量级应用服务器的公网IP地址:

#设置本地用户登录后所在目录。
local_root=/var/ftp/test
#全部用户被限制在主目录。
chroot_local_user=YES
#启用例外用户名单。
chroot_list_enable=YES
#指定例外用户列表文件,列表中用户不被锁定在主目录。
chroot_list_file=/etc/vsftpd/chroot_list
#开启被动模式。
pasv_enable=YES
allow_writeable_chroot=YES
#本示例中为轻量应用服务器的公网IP地址。
pasv_address=39.105.xx.xx
#设置被动模式下,建立数据传输可使用的端口范围的最小值。
#建议您把端口范围设置在一段比较高的范围内,例如50000~50010,有助于提高访问FTP服务器的安全性。
pasv_min_port=50000
#设置被动模式下,建立数据传输可使用的端口范围的最大值。
pasv_max_port=50010


    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]