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 限制)

相关推荐
悠哉悠哉愿意6 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
Lester_11016 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元6 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
三佛科技-187366133976 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315206 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
古译汉书6 天前
【IoT死磕系列】Day 7:只传8字节怎么控机械臂?学习工业控制 CANopen 的“对象字典”(附企业级源码)
数据结构·stm32·物联网·http
Alaso_shuang6 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
脚后跟6 天前
AI助力嵌入式物联网项目全栈开发
嵌入式硬件·物联网·ai编程
2501_918126916 天前
stm32死锁是怎么实现的
stm32·单片机·嵌入式硬件·学习·个人开发
z20348315206 天前
STM32F103系列单片机定时器介绍(一)
stm32·单片机