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被动模式端口如何开放?


常见问题排查

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

    • 原因:命令通道连接成功,但数据通道被防火墙拦截
    • 检查点
      • 是否在 vsftpd.conf 中设置了 pasv_min_portpasv_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

相关推荐

  • 联想打印机怎么连手机?手机无线连接打印机步骤?

    连接手机与联想打印机的核心在于确保设备处于同一网络环境,并正确使用官方应用程序或系统自带打印服务,无论是通过Wi-Fi直连还是局域网传输,联想打印机手机连接打印机步骤的本质是建立移动端与打印端的数据握手,用户无需复杂的IT知识,只需按照标准流程配置网络与软件,即可实现高效移动办公,连接前的核心准备工作在开始操作……

    2026年2月23日
    22200
  • 一核两G内存服务器能处理多少数据量,够用吗?

    一核两g内存服务器的真实数据量边界一核两g内存服务器适合数据总量在1GB以内的小型网站,日均PV建议控制在5000以下,MySQL数据库规模不超过500MB,配合优化可稳定运行轻量级WordPress、个人博客或企业展示站,理解配置极限:1核CPU与2GB内存的分工CPU负责计算,内存决定同时处理多少任务,1核……

    2026年8月12日
    500
  • aspnet上传到服务器失败怎么办?.net类型转换错误解决方法

    在ASP.NET环境中将文件上传至服务器,核心在于结合HttpPostedFileBase类处理前端请求,并配合服务器端的IIS配置与文件系统权限管理,确保大文件传输的安全性与稳定性,文件上传是Web开发中最常见也最容易出错的场景之一,很多开发者在本地调试时一切正常,一旦部署到生产环境,要么遇到500错误,要么……

    2026年6月11日
    2610
  • AppCode在哪里?为简易认证添加AppCode的正确方法

    AppCode位于Xcode的“Preferences”->“Accounts”面板中,通过登录Apple ID并勾选“Manage Certificates”即可自动获取或创建用于简易认证的开发证书与配置文件,对于许多初次接触iOS开发或试图简化发布流程的开发者来说,寻找AppCode(此处指代用于代码……

    2026年6月16日
    2800
  • 1万人在线APP服务器究竟多少钱?,哪家性价比高?

    1万人在线的APP服务器,月成本通常在800元至3000元之间,具体取决于你的技术架构、业务场景和带宽需求,对于大多数起步阶段的APP,采用云服务器按需付费是最优解,下文将拆解成本构成,并给出不同场景下的配置方案和真实预算参考,为什么价格区间跨度这么大成本差异主要来自三个核心维度:计算资源消耗、带宽峰值流量、以……

    2026年8月4日
    1400
  • AI和深度学习有什么区别?开发深度学习模型需要掌握哪些核心技能

    AI是涵盖机器学习、深度学习及专家系统的宏观概念,而深度学习是AI中利用多层神经网络处理复杂数据的核心技术分支,二者是包含与被包含的关系,很多人容易把人工智能(AI)和深度学习混为一谈,仿佛它们是同义词,这种混淆就像把“汽车”和“内燃机”等同一样,AI是一个巨大的伞状概念,包含了从简单的规则引擎到复杂的认知计算……

    2026年6月12日
    3310
  • 百度智能云11.11上云钜惠有哪些优惠?

    2026年百度智能云11.11上云钜惠盛典已正式开启,百款爆品限时直降,通过官方渠道参与即可领取专属上云礼包,是中小企业降低IT成本的最佳窗口期,在数字化转型进入深水区的2026年,企业对于云计算的依赖已从“可选”变为“必选”,高昂的算力成本和复杂的运维门槛,依然让许多中小企业主望而却步,百度智能云此次推出的1……

    2026年7月3日
    3300
  • 联想服务器U盘启动按F多少钱?,按F几才能启动?

    联想服务器U盘启动通常按F12进入启动菜单选择U盘,按F2或Delete进BIOS调整启动顺序,费用方面,自己操作免费,若需专业工程师处理,远程协助约100-300元,现场服务约300-800元,具体取决于服务器型号、问题复杂度和是否涉及数据备份,联想服务器U盘启动,按键并非唯一答案不同型号的默认启动键联想服务……

    行业资讯 2026年8月9日
    1100
  • 服务器8G内存到底能放多少东西,性能够用吗?

    8G内存的服务器能承载的内容量,核心取决于你运行的业务类型和优化水平,它能支撑一个每天数万访客的动态网站,或者同时运行多个轻量级应用,但如果你要跑大型数据库或高并发游戏,就得上更大的内存,8G内存的服务器,到底能装下多少“东西”很多人把服务器内存想象成仓库,觉得容量越大就能塞越多东西,但实际运行中,内存更像是工……

    2026年8月23日
    200
  • tcp服务器端口最多能连多少个连接,tcp最大连接数是多少

    TCP服务器端口能维持的连接数并非由单一端口决定,理论上限取决于服务器资源与四元组组合,实际可达百万级别,很多人误以为服务器端口最多只能有65535个连接,这是把客户端端口限制和服务器端连接容量混为一谈,服务器监听端口固定(如80),但每个连接由客户端IP、客户端端口、服务器IP、服务器端口四元组唯一标识,只要……

    2026年8月19日
    1300

发表回复

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