Karp 的技术博客

FTP(文件传输协议)是一种用于在网络上进行文件传输的标准协议。在 Linux 系统上搭建 FTP 服务器可以方便地共享和管理文件。本文将介绍如何在 Linux 上搭建 FTP 服务器,使用 vsftpd(非常安全的 FTP 守护进程)。

1. 安装 vsftpd

1.1 更新系统

在安装之前,确保系统是最新的。可以使用以下命令更新系统:

sudo apt update && sudo apt upgrade -y   # Ubuntu/Debian
sudo yum update -y                       # CentOS/RHEL

1.2 安装 vsftpd

根据您使用的 Linux 发行版,使用以下命令安装 vsftpd:

对于 Ubuntu/Debian 系列:

sudo apt install vsftpd -y

对于 CentOS/RHEL 系列:

sudo yum install vsftpd -y

2. 配置 vsftpd

2.1 编辑配置文件

vsftpd 的配置文件位于 /etc/vsftpd.conf。使用文本编辑器打开该文件:

sudo nano /etc/vsftpd.conf

2.2 配置选项

根据需要修改以下配置选项:

  • 允许匿名访问

    anonymous_enable=NO
  • 启用本地用户访问

    local_enable=YES
  • 允许上传文件

    write_enable=YES
  • 启用被动模式(如果需要):

    pasv_enable=YES
    pasv_min_port=10000
    pasv_max_port=10100
  • 设置根目录(可选):

    chroot_local_user=YES

修改完配置后,保存并关闭文件。

2.3 创建 FTP 用户

可以创建一个专门用于 FTP 的用户:

sudo adduser ftpuser

按照提示设置密码,并根据需要填写用户信息。

2.4 设置用户权限

设置 FTP 用户的家目录及权限:

sudo mkdir -p /home/ftpuser/files
sudo chown ftpuser:ftpuser /home/ftpuser/files

3. 启动 vsftpd 服务

3.1 启动 vsftpd

使用以下命令启动 vsftpd 服务:

sudo systemctl start vsftpd

3.2 设置开机自启

要确保 vsftpd 在系统重启后自动启动,可以使用:

sudo systemctl enable vsftpd

4. 配置防火墙

如果系统启用了防火墙,您需要允许 FTP 端口(默认是 21)通过防火墙。

4.1 对于 UFW(Ubuntu):

sudo ufw allow 21/tcp
sudo ufw allow 10000:10100/tcp   # 如果启用了被动模式
sudo ufw enable

4.2 对于 firewalld(CentOS):

sudo firewall-cmd --zone=public --add-port=21/tcp --permanent
sudo firewall-cmd --zone=public --add-port=10000-10100/tcp --permanent
sudo firewall-cmd --reload

5. 测试 FTP 服务器

您可以使用 FTP 客户端(如 FileZilla)或命令行工具连接到 FTP 服务器。

使用命令行连接

ftp your_server_ip

输入用户名和密码进行登录。

版权属于:karp
作品采用:本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
更新于: 2024年10月21日 01:11
0

目录

来自 《Linux 下搭建 FTP 服务器》
774 文章数
0 评论量
9 分类数
779 页面数
已在风雨中度过 9年277天3小时32分