Linux系统如何配置vsftp实现远程连接

来源:站长素材作者:天穹小白头衔:草根站长
导读:本期聚焦于小伙伴创作的《Linux系统如何配置vsftp实现远程连接》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《Linux系统如何配置vsftp实现远程连接》有用,将其分享出去将是对创作者最好的鼓励。

在Linux系统中搭建vsftp远程连接服务,需要先完成程序安装、配置文件调整、权限设置以及网络访问规则适配,整个流程操作清晰,按照步骤执行即可快速实现功能。

Linux系统如何配置vsftp实现远程连接

一、安装vsftp程序

不同Linux发行版的安装命令略有差异,主流系统的安装方式如下:

  • CentOS/RHEL系统使用yum包管理器安装:
# 安装vsftp
yum install -y vsftpd
# 设置开机自启
systemctl enable vsftpd
  • Ubuntu/Debian系统使用apt包管理器安装:
# 更新软件源
apt update
# 安装vsftp
apt install -y vsftpd
# 设置开机自启
systemctl enable vsftpd

二、核心配置文件修改

vsftp的主配置文件路径为/etc/vsftpd/vsftpd.conf,需要根据远程连接需求调整以下核心参数:

配置项推荐值说明
anonymous_enableNO禁止匿名用户登录,提升安全性
local_enableYES允许本地系统用户登录
write_enableYES允许登录用户执行写操作,包括上传、删除文件
chroot_local_userYES将用户限制在自己的家目录中,避免访问系统其他路径
allow_writeable_chrootYES当chroot限制开启时,允许用户对自己的家目录有写权限
pasv_enableYES开启被动模式,适配大部分客户端网络环境
pasv_min_port30000被动模式最小端口
pasv_max_port31000被动模式最大端口

修改完成后保存配置文件,执行以下命令重启vsftp服务使配置生效:

systemctl restart vsftpd

三、用户权限设置

如果需要使用指定系统用户进行远程连接,需要先创建用户并设置密码,同时调整家目录权限:

# 创建ftp用户,禁止登录系统shell
useradd -s /sbin/nologin ftpuser
# 设置用户密码
passwd ftpuser
# 调整用户家目录权限,确保用户有读写权限
chmod 755 /home/ftpuser

如果需要允许用户访问指定自定义目录,可以修改用户家目录路径,同时设置目录权限:

# 创建自定义目录
mkdir -p /data/ftp
# 设置目录所有者为ftp用户
chown -R ftpuser:ftpuser /data/ftp
# 修改用户的家目录为自定义目录
usermod -d /data/ftp ftpuser

四、防火墙与SELinux调整

1. 防火墙规则配置

vsftp使用21端口作为控制端口,被动模式端口范围为30000到31000,需要在防火墙中开放这些端口:

  • firewalld防火墙(CentOS 7及以上、RHEL 7及以上):
# 开放21端口
firewall-cmd --permanent --add-port=21/tcp
# 开放被动模式端口范围
firewall-cmd --permanent --add-port=30000-31000/tcp
# 重新加载防火墙规则
firewall-cmd --reload
  • ufw防火墙(Ubuntu系统):
# 开放21端口
ufw allow 21/tcp
# 开放被动模式端口范围
ufw allow 30000:31000/tcp
# 重新加载防火墙规则
ufw reload

2. SELinux设置

如果系统开启了SELinux,需要允许vsftp相关访问规则,否则可能出现权限拒绝问题:

# 允许ftp用户访问家目录
setsebool -P ftp_home_dir on
# 允许vsftp读写文件
setsebool -P allow_ftpd_full_access on

如果暂时不需要SELinux,也可以临时关闭SELinux:

# 临时关闭SELinux
setenforce 0
# 永久关闭需要修改/etc/selinux/config文件,将SELINUX设置为disabled

五、连接测试与问题排查

配置完成后,可以使用FTP客户端工具或者命令行进行连接测试:

# 使用ftp命令连接,替换为你的服务器IP
ftp 192.168.0.1
# 输入之前创建的用户名ftpuser和密码

如果连接失败,可以按照以下思路排查:

  • 检查vsftp服务是否正常运行:systemctl status vsftpd
  • 检查配置文件语法是否正确:vsftpd -v
  • 检查防火墙端口是否开放:firewall-cmd --list-ports或者ufw status
  • 检查SELinux是否阻止访问:查看/var/log/audit/audit.log日志
  • 检查用户家目录权限是否正确,是否存在读写限制

注意:如果使用被动模式连接,需要确保客户端网络没有阻止被动模式端口的访问,部分公网环境可能需要运营商开放对应端口范围。

Linuxvsftp远程连接FTP服务修改时间:2026-06-25 03:24:36

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。