Linux FTP PASV模式怎么配置,FTP被动模式端口如何开放?

FTP 被动模式 (PASV) 详解

在 Linux 环境下配置 FTP 服务时,被动模式 (Passive Mode) 是解决防火墙和 NAT(网络地址转换)导致连接失败的关键技术。

什么是 FTP 被动模式?

FTP 协议在传输数据时会建立两个独立的通道:

[java漫谈系列153]ftp主动模式和被动(PASV)模式
加载中
[java漫谈系列153]ftp主动模式和被动(PASV)模式
  • 命令通道 (Command Channel):用于发送指令(如 ls, get, put),默认使用 21 端口。
  • 数据通道 (Data Channel):用于实际传输文件内容或目录列表。

在 被动模式 (PASV) 下,数据通道的建立是由客户端主动发起的,客户端通过命令通道询问服务器:“请告诉我你应该在哪个端口接收数据?”服务器返回一个高位端口号,然后客户端连接该端口。

主动模式 (Active) vs 被动模式 (Passive)

特性 主动模式 (Active/PORT) 被动模式 (Passive/PASV)
数据连接发起方 服务器连接客户端

Linux FTP PASV模式怎么配置,FTP被动模式端口如何开放?

客户端连接服务器

客户端要求客户端必须开放端口并允许外部连接客户端只需能访问互联网
防火墙友好度对客户端防火墙极不友好对客户端非常友好
服务器要求服务器只需开放 21 端口服务器需开放 21 端口及一段随机端口范围

核心结论:在现代互联网环境下,由于大多数用户处于路由器(NAT)或防火墙之后,被动模式是目前最常用的连接方式。


Linux (vsftpd) 配置被动模式步骤

以最常用的 vsftpd 为例,配置被动模式需要明确指定端口范围和服务器的公网 IP。

修改配置文件

编辑 /etc/vsftpd.conf 文件:

sudo vi /etc/vsftpd.conf

添加或修改以下参数

在文件中添加以下配置项:

Linux FTP PASV模式怎么配置,FTP被动模式端口如何开放?

  • 启用被动模式:
    pasv_enable=YES
  • 设置被动模式端口范围(非常重要,用于防火墙放行):
    pasv_min_port=30000
    pasv_max_port=31000
  • 设置服务器的公网 IP(如果服务器在云端或 NAT 后):
    pasv_address=你的服务器公网IP
  • 强制使用被动模式(可选):
    pasv_addr_resolve=YES

重启服务

保存退出后,重启 vsftpd 使配置生效:

sudo systemctl restart vsftpd

防火墙配置

配置了被动模式端口范围后,必须在服务器的防火墙中放行这些端口,否则客户端会卡在“正在获取目录列表”或“连接超时”阶段。

使用 firewalld (CentOS/RHEL)

# 放行 FTP 命令端口
sudo firewall-cmd --permanent --add-service=ftp
# 放行被动模式定义的端口范围
sudo firewall-cmd --permanent --add-port=30000-31000/tcp
# 重新加载防火墙
sudo firewall-cmd --reload

使用 ufw (Ubuntu/Debian)

# 放行 FTP 命令端口
sudo ufw allow 21/tcp
# 放行被动模式定义的端口范围
sudo ufw allow 30000:31000/tcp
# 重新加载防火墙
sudo ufw reload

Linux FTP PASV模式怎么配置,FTP被动模式端口如何开放?


常见问题排查

  • 现象:能登录,但执行 ls 或 dir 时卡住/报错

    • 原因:命令通道连接成功,但数据通道被防火墙拦截。
    • 检查点:
      • 是否在 vsftpd.conf 中设置了 pasv_min_port 和 pasv_max_port?
      • 服务器防火墙(iptables/firewalld/ufw)是否放行了该范围?
      • 云服务器厂商(如简米云、AWS)的安全组是否放行了该范围?
  • 现象:报错 “Failed to retrieve directory listing”

    • 原因:服务器返回给客户端的 IP 地址是内网 IP,导致客户端无法连接。
    • 检查点:
      • 必须在 vsftpd.conf 中配置 pasv_address=你的公网IP。
  • 现象:连接超时

    • 检查点:
      • 确认 21 端口是否正常工作。
      • 确认网络路径上是否存在拦截高位端口的中间设备。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/493474.html

赞 (0)
搬瓦工限量版VPS补货了吗,搬瓦工CN2 GIA哪款最值得买?
上一篇 2026年7月14日 07:24
Linux各种Shell有什么区别,Bash和Zsh哪个更好用?
下一篇 2026年7月14日 07:27

相关推荐

  • ASP回车换行怎么实现?ASP中回车换行符是什么

    `,以区分段落,<%' 处理双换行符作为段落分隔Dim processedTextprocessedText = Replace(strText, vbCrLf & vbCrLf, "<p></p>")processedText = Replac……

    2026年6月13日
    2710
  • 什么是Appointment?Appointment怎么预约

    预约(Appointment)的核心价值在于通过结构化的时间管理,将碎片化的事务转化为可执行、可追踪的高效行动,其本质是个人时间与精力的资产化管理,在数字化办公与远程协作成为常态的当下,”Appointment”不再仅仅是一个日历上的标记,而是连接人际信任、资源分配与目标达成的关键节点,无论是B2B商务洽谈、医……

    2026年6月14日
    2800
  • 国外主机如何备案,境外服务器备案流程是什么?

    国外主机无法直接进行ICP备案,必须通过中国大陆境内的服务器或CDN节点作为接入商完成备案流程,根据中国工信部(MIIT)的《非经营性互联网信息服务备案管理办法》,ICP备案的硬性前提是服务器物理节点位于中国大陆境内,对于使用境外主机(包括美国、香港、日本等地区)的用户,若要合法备案并解决国内访问问题,必须采取……

    2026年2月25日
    16500
  • app怎么和数据库通信?app与数据库连接方法详解

    App与数据库通信的本质,是客户端通过标准化的网络协议与中间层服务进行数据交互的过程,其核心架构遵循“App端请求—API网关分发—数据库引擎执行—结果反馈”的闭环路径,实现高效、安全的通信,必须建立在后端服务中介与严格的身份验证机制之上,直接连接模式在移动互联时代已被彻底摒弃, 核心架构解析:为何必须通过服务……

    2026年4月3日
    10600
  • 罗马尼亚抗投诉VPS三折促销是真的吗?hostsolutions VPS优惠码

    Hostsolutions罗马尼亚抗投诉VPS目前推出三折优惠,使用优惠码后年付仅需25欧元,即可锁定1核CPU、1G内存、30G NVMe硬盘及10TB流量的KVM架构服务器,是追求高性价比与合规稳定性的理想选择,在服务器租赁市场鱼龙混杂的今天,寻找一款既便宜又稳定的VPS并非易事,许多用户被低价吸引后,往往……

    2026年6月24日
    2700
  • NextArray美国达拉斯VPS好用吗,美国VPS推荐

    NextArray美国达拉斯VPS凭借1.99美元/月的极致性价比、100Mbps带宽及无限流量优势,成为预算有限且对网络稳定性有基础需求的用户搭建轻量级应用的首选方案,在云计算市场日益内卷的当下,寻找一款既便宜又稳定的VPS并非易事,许多新手站长在初期往往被高昂的月付费用劝退,而NextArray推出的达拉斯……

    2026年6月30日
    1600
  • 如何快速查看电脑服务器IP地址,电脑服务器IP地址怎么查

    查看电脑服务器的IP地址,最直接的办法是登录服务器操作系统,Windows用ipconfig,Linux用ip addr,两条命令就能看到当前网卡分配的IP;如果服务器在云上,登录服务商控制台,实例详情页里也会直接列出公网IP和内网IP,至于“多少个”,一台服务器通常至少有两个IP——一个内网IP和一个公网IP……

    2026年8月8日
    700
  • 服务器游客模式如何区分客户端?,怎么设置游客权限

    在服务器部署阶段,通过集成登录验证插件与权限管理插件,并配合客户端版本检测模块,即可实现游客模式区分客户端并设置差异化权限,游客模式与客户端区分的基础逻辑游客模式的核心在于将未完成身份验证的玩家与正式用户隔离,再根据其客户端类型(如基岩版、Java版或其他分支版本)赋予不同的访问权限,区分客户端不是单纯为了限制……

    2026年7月31日
    100
  • linux nginx缓存怎么设置?linux nginx配置缓存目录

    在 Linux 环境下,Nginx 的缓存功能主要涉及两个层面:反向代理缓存(Proxy Cache) 和 静态文件缓存(FastCGI/Static Cache),最常用的是 反向代理缓存,它可以将后端服务器(如 Apache、Tomcat、Node.js 等)返回的内容缓存到本地磁盘或内存中,从而减轻后端压……

    2026年7月10日
    12400
  • api spec 10a_IaC Spec包典型目录结构是什么?IaC Spec包目录结构详解

    api spec 10a_IaC Spec包典型目录结构的核心设计逻辑在于实现“基础设施即代码”的标准化与可维护性平衡,一个规范的目录结构不仅是代码组织的物理形态,更是团队协作效率、自动化流水线执行以及合规性审计的基石,通过将API规范与IaC配置深度融合,该结构能够确保从接口定义到资源创建的全链路一致性,显著……

    2026年4月5日
    7300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注