码上问学问代码之理,学编程之道
教材同步›项目 10
教材同步 · 叶廷东《Linux 操作系统管理(第 2 版)》航空工业出版社 · “十四五”国家规划教材

项目10 FTP 服务器

FTP 文件传输。配 vsftpd.conf 关键开关、控制匿名与本地用户、chroot 锁家目录。

任务 10.1

服务概述

vsftpd

FTP 用于文件上传下载。Linux 常用轻量安全的 vsftpd。教材项目 10。

任务 10.2

安装与配置

从装包到写出配置文件
10.2.1安装软件包

dnf install -y vsftpd;守护进程 vsftpd。

10.2.2配置文件 /etc/vsftpd/vsftpd.conf

关键开关:anonymous_enable(是否允许匿名)、local_enable(本地用户登录)、write_enable(可上传)、chroot_local_user(锁在自家目录,安全)。

conf
关键开关:<code>anonymous_enable</code>(是否允许匿名)、<code>local_enable</code>(本地用户登录)、<code>write_enable</code>(可上传)、<code>chroot_local_user</code>(锁在自家目录,安全)。
任务 10.3

启动、放行与测试

让服务跑起来并验证
10.3.1启动与防火墙

启动服务并设置开机自启;用 firewall-cmd --add-service=ftp --permanent 放行,再 --reload。生产服务器只开必要端口。

bash
systemctl enable --now ftp
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload
Created symlink ... success (规则已重载)
10.3.2测试验证

用 ftp/lftp 以本地用户登录,上传下载一个文件验证;被动模式(PASV)在跨网段更稳,防火墙需放行被动端口段。

10.3.3关键命令参数卡
随身参数卡 · vsftpd.conf 关键项 + 放行
vsftpd.conf
  • anonymous_enable=NO 关匿名(更安全)
  • local_enable=YES 允许本地用户
  • write_enable=YES 允许上传
  • chroot_local_user=YES 锁家目录
  • listen=YES 独立模式监听
放行 / 测
  • firewall-cmd --add-service=ftp --permanent
  • systemctl enable --now vsftpd
  • ftp localhost 或 lftp 用户@IP 登录测
完整五步实战在这里:网络服务配置实战 · FTP(vsftpd) 按「场景 → 配置 → 启动 → 测试 → 排障」详细展开,含多服务集成与排障法,本项目只给命令与参数卡。

拓展训练

教材每项目末尾 · 上机可重做取最高分
1
在虚拟机里安装并启动 vsftpd,用 systemctl status 确认 Active(running)。
2
用 firewall-cmd --add-service=ftp --permanent 放行后 --reload,从另一台机器测试能连通。
3
故意写错一处配置,用本项目参数卡里的『校验命令』找出错误并修复。
4
把该服务设为开机自启(systemctl enable),重启虚拟机验证自动起来。

服务项目重在『排障』:连不上时按 配置→端口→防火墙→日志 逐层查,journalctl -u 服务名 是第一现场。