详细指南,手把手教你安装并配置FTP服务器

2026-08-30 20:36:38 98阅读
本文是一份详尽的FTP服务器安装与配置指南,内容从基础环境准备入手,手把手指导用户完成服务端软件的下载与安装,随后详细讲解了用户创建、目录权限分配、防火墙及端口设置等核心配置步骤,并辅以安全优化建议,旨在帮助读者快速搭建安全、稳定的文件传输服务,实现高效的资源共享与管理。

在日常的服务器管理与网站维护工作中,文件传输是必不可少的环节,FTP(文件传输协议)作为一种经典的网络协议,至今仍是许多企业和个人进行大文件上传、下载以及站点代码部署的首选方式,本文将以Linux系统(如Ubuntu/CentOS)为例,手把手教你如何完整地安装并配置ftp服务器

为什么选择 vsftpd?

在Linux环境下,有多款FTP服务端软件可供选择,其中最推荐的是 vsftpd(Very Secure FTP Daemon),顾名思义,它以安全、轻量和高性能著称,是各大Linux发行版中最受欢迎的FTP服务器软件之一。

详细指南,手把手教你安装并配置FTP服务器

安装 vsftpd

通过SSH连接到你的服务器,确保你拥有 rootsudo 用户的权限。

对于 Ubuntu / Debian 系统: 打开终端,输入以下命令更新软件包列表并安装:

sudo apt update
sudo apt install vsftpd -y

对于 CentOS / RHEL 系统: 使用 yumdnf 包管理器进行安装:

sudo yum install vsftpd -y

安装完成后,vsftpd 会自动注册为系统服务,你可以通过以下命令启动它,并设置为开机自启:

sudo systemctl start vsftpd
sudo systemctl enable vsftpd

配置 FTP 服务器

成功安装软件只是第一步,要使其安全且按我们的需求运行,必须进行正确的配置,vsftpd 的主配置文件位于 /etc/vsftpd.conf

备份原始配置文件 在进行任何修改之前,养成备份的好习惯:

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

修改配置文件 使用文本编辑器(如 nano 或 vim)打开配置文件:

sudo nano /etc/vsftpd.conf

找到并修改以下关键配置项(如果前面有 注释符,请将其删除以启用该配置):

  • 禁止匿名登录(出于安全考虑,只允许本地用户登录):
    anonymous_enable=NO
  • 允许本地用户登录
    local_enable=YES
  • 赋予用户写入权限
    write_enable=YES
  • 设置用户主目录(将用户限制在其主目录下,防止其访问系统其他文件,这被称为 chroot jail):
    chroot_local_user=YES
    allow_writeable_chroot=YES
  • 配置被动模式(如果服务器在云端或防火墙后,被动模式是必须的,在文件末尾添加):
    pasv_enable=YES
    pasv_min_port=40000
    pasv_max_port=50000

保存并退出编辑器。

创建 FTP 用户

为了安全起见,我们通常不建议直接使用 root 用户进行 FTP 连接,我们可以创建一个专门用于 FTP 操作的独立用户。

  1. 创建新用户并指定主目录(例如用户名为 ftpuser,目录为 /home/ftpuser):
    sudo useradd -m -d /home/ftpuser -s /bin/bash ftpuser
  2. 为该用户设置密码
    sudo passwd ftpuser

    系统会提示你输入两次新密码。

  3. 调整目录权限:确保用户对自己的目录有读写权限:
    sudo chown ftpuser:ftpuser /home/ftpuser
    sudo chmod 755 /home/ftpuser

配置防火墙

完成上述安装并配置ftp服务器的步骤后,千万不要忘记在防火墙中放行 FTP 所需的端口,否则客户端将无法连接。

放行系统防火墙 如果你使用的是 UFW(Ubuntu 默认):

sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw allow 40000:50000/tcp
sudo ufw reload

如果你使用的是 Firewalld(CentOS 默认):

sudo firewall-cmd --permanent --add-port=20-21/tcp
sudo firewall-cmd --permanent --add-port=40000-50000/tcp
sudo firewall-cmd --reload

放行云服务器安全组 如果你使用的是阿里云、腾讯云或 AWS 等云服务器,还需要登录云控制台,在“安全组”规则中手动添加入站规则,放行 2021 端口以及 40000-50000 的被动模式端口段。

重启服务并测试

所有配置修改完成后,重启 vsftpd 服务以使配置生效:

sudo systemctl restart vsftpd

检查服务状态,确保其正常运行:

sudo systemctl status vsftpd

测试连接: 在你的本地电脑上,下载一个 FTP 客户端软件(如 FileZilla),输入服务器的公网 IP、用户名(ftpuser)、密码和端口(21),点击快速连接,如果成功看到远程目录并能够上传/下载文件,说明你的 FTP 服务器已经成功搭建完毕!

通过以上步骤,我们完整地实现了安装并配置ftp服务器的全过程,虽然 FTP 协议历史悠久,但在局域网或对加密要求不高的场景中,它依然非常高效,如果你的数据传输对安全性要求极高(如涉及敏感隐私数据),建议进一步配置 FTP over TLS (FTPS) 或转移使用 SFTP 协议,以保证数据在传输过程中处于加密状态。

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