Linux--vsFTP配置篇

一、vsFTP 简介

vsftpd(Very Secure FTP Daemon)是 Linux 下常用的 FTP 服务程序,具有安全性高、效率高和稳定性好等特点。支持匿名访问、本地用户登录、虚拟用户等多种认证方式,并可灵活控制权限。

二、安装与启动

  1. 检查是否已安装 vsftpd

rpm -qa | grep vsftpd

  1. 安装 vsftpd(若未安装)

yum install vsftpd

  1. 启动 vsftpd 服务

service vsftpd start

  1. 查看服务运行状态

service vsftpd status

  1. 重启 vsftpd 服务

service vsftpd restart

三、实验一:匿名用户上传/下载文件

  1. 修改配置文件 /etc/vsftpd/vsftpd.conf

Ini

anonymous_enable=YES # 允许匿名访问

local_enable=YES # 允许本地用户登录

write_enable=YES # 允许写入操作

anon_upload_enable=YES # 允许匿名上传

anon_mkdir_write_enable=YES # 允许匿名创建目录

  1. 修改 /var/ftp/pub 目录权限

chmod o+rw /var/ftp/pub

  1. 重启服务

service vsftpd restart

  1. Windows 测试连接

打开 CMD:

Cmd

ftp 192.168.77.XX

用户名输入:ftp 或 anonymous

密码输入:任意邮箱地址(如 a@b.com

上传测试:

Cmd

put 文件名

下载测试:

Cmd

get 文件名

四、实验二:本地用户上传/下载文件

  1. 创建本地用户

useradd 拼音缩写

passwd 拼音缩写

设置密码为:a123456

  1. Windows 登录测试

Cmd

ftp 192.168.77.XX

用户名: 拼音缩写

密码: a123456

上传文件:

Cmd

put aa.txt

下载文件:

Cmd

get aa.txt

五、实验三:限制用户访问

  1. 限制仅指定用户可以访问 FTP

修改配置文件 /etc/vsftpd/vsftpd.conf:

Ini

userlist_enable=YES

userlist_deny=NO

userlist_file=/etc/vsftpd.user_list

编辑白名单文件 /etc/vsftpd.user_list,添加允许的用户名:

zhangsan

lisi

  1. 限制用户只能访问其主目录(禁止切换到其他目录)

修改配置文件 /etc/vsftpd/vsftpd.conf:

Ini

chroot_local_user=YES

#chroot_list_enable=YES

#chroot_list_file=/etc/vsftpd/chroot_list

注意:如果使用 chroot_list,需取消注释并添加特定用户到该文件中。

示例:

echo "zhangsan" >> /etc/vsftpd/chroot_list

  1. 重启服务生效

service vsftpd restart

六、常用命令总结

功能 命令

检查 vsftpd 是否安装 rpm -qa | grep vsftpd

安装 vsftpd yum install vsftpd

启动 vsftpd service vsftpd start

停止 vsftpd service vsftpd stop

重启 vsftpd service vsftpd restart

查看运行状态 service vsftpd status

添加用户 useradd 用户名

设置密码 passwd 用户名

修改权限 chmod 权限 路径

查看配置文件 cat /etc/vsftpd/vsftpd.conf

七、注意事项

匿名用户默认目录:/var/ftp

本地用户登录后默认进入其主目录

修改配置文件后必须重启服务才生效

确保防火墙关闭或开放 20/21 端口

SELinux 可能影响 FTP 访问,建议临时关闭或配置策略

八、常见问题排查

问题 解决方法

匿名用户无法上传文件 检查 anon_upload_enable=YES,并确认 /var/ftp/pub 有写权限

本地用户无法登录 检查 local_enable=YES,确认用户名和密码正确

用户登录后无法切换目录 配置 chroot_local_user=YES 并检查主目录权限

连接超时或拒绝连接 检查 IP 地址是否正确、网络是否通、服务是否运行

提示"500 OOPS"错误 检查配置文件语法错误,特别是行尾是否有空格

九、总结

本笔记详细记录了 vsFTP 服务器的基本配置流程,包括:

安装与启动

匿名用户的上传与下载

本地用户的登录与文件传输

用户访问控制(白名单 + chroot 限制)

相关推荐
Forsete2 小时前
LINUX驱动开发#9——定时器
linux·驱动开发·单片机
Hello_Embed4 小时前
libmodbus 移植 STM32(USB 串口后端篇)
笔记·stm32·单片机·嵌入式·freertos·libmodbus
VekiSon5 小时前
Linux内核驱动——杂项设备驱动与内核模块编译
linux·c语言·arm开发·嵌入式硬件
来自晴朗的明天7 小时前
14、光耦隔离电路(EL3H7)
单片机·嵌入式硬件·硬件工程
G***技7 小时前
杰和IB3-272:以低功耗高性能打造新一代工业智能交互核心
单片机·嵌入式硬件·物联网
czhaii8 小时前
STC AI8052U单片机特点
单片机
MAR-Sky8 小时前
keil5中数据的不同定义和单片机(以stc8为例)里的对应关系(idata,xdata,data,code)
单片机·嵌入式硬件
项目題供诗10 小时前
51单片机入门(八)
单片机·嵌入式硬件·51单片机
羽获飞10 小时前
从零开始学嵌入式之STM32——9.STM32的时钟系统
stm32·单片机·嵌入式硬件
飞睿科技11 小时前
乐鑫智能开关方案解析:基于ESP32-C系列的低功耗、高集成设计
嵌入式硬件·物联网·esp32·智能家居·乐鑫科技