搭建FTP服务器

2023-08-22 5361阅读 0评论

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


免责声明
1、本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明。
2、本网站转载文章仅为传播更多信息之目的,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所
提供信息的准确性及可靠性,但不保证信息的正确性和完整性,且不对因信息的不正确或遗漏导致的任何
损失或损害承担责任。
3、任何透过本网站网页而链接及得到的资讯、产品及服务,本网站概不负责,亦不负任何法律责任。
4、本网站所刊发、转载的文章,其版权均归原作者所有,如其他媒体、网站或个人从本网下载使用,请在
转载有关文章时务必尊重该文章的著作权,保留本网注明的“稿件来源”,并白负版权等法律责任。

手机扫描二维码访问

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,5361人围观)

还没有评论,来说两句吧...

目录[+]