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

相关推荐
LCG元3 小时前
STM32项目开发:基于CAN总线的多节点通信与数据采集系统
stm32·单片机·嵌入式硬件
12.=0.3 小时前
【stm32_2.1】【快速入门】自举模式、Flash闪存、LED点灯——对二极管PN结解析
stm32·单片机·嵌入式硬件
辰哥单片机设计4 小时前
STM32智能风扇(机智云)
stm32·单片机·嵌入式硬件
【 STM32开发 】4 小时前
【STM32 + CubeMX】低功耗 -- SLEEP 睡眠模式
stm32·单片机·低功耗·sleep·睡眠模式
芯芯点灯4 小时前
LIS2DW12驱动,功耗,数据可视化
驱动开发·单片机
Nice__J5 小时前
Mcu架构以及原理——2.Cortex-M流水线与指令集
单片机·嵌入式硬件·架构
小白橘颂5 小时前
【C语言】基础概念梳理(一)
c语言·开发语言·stm32·单片机·mcu·物联网·51单片机
aini_lovee6 小时前
SIM7600模块STM32控制程序
stm32·单片机·嵌入式硬件
是翔仔呐6 小时前
第13章 超声波测距传感器驱动:HC-SR04底层原理与C语言实现
c语言·开发语言·单片机·嵌入式硬件·gitee
小飞菜涅6 小时前
fast-lio2复现
嵌入式硬件·学习·ubuntu