ftp服务器防火墙的设置规则

FTP服务器连不上,八成是防火墙把数据端口给拦了,别只盯着21端口。要想让FTP服务在公网稳定跑起来,得先弄明白主动模式和被动模式的数据链路差异,再针对你的服务器系统(Windows或Linux)和部署环境(物理机或云服务器)把规则写对。

先搞懂FTP的“双通道”机制,否则防火墙规则白设

FTP和HTTP最大的区别在于它需要占用两个端口:一个用于发送指令(控制连接),另一个用于传输文件(数据连接),防火墙只放行控制端口,数据链路照样被掐断,表现出来就是用户能登录,但列目录或传文件时卡死、超时。

防火墙放行FileZilla FTP服务
加载中
防火墙放行FileZilla FTP服务

主动模式(Active Mode)的数据连接怎么走

主动模式下,客户端向服务器的21端口发起连接后,服务器会主动从自己的20端口向客户端的随机端口发起数据连接,这种模式在公网场景下几乎必被客户端防火墙拦截,所以现在用得越来越少,如果你在局域网内部调试,且客户端防火墙关闭,主动模式才靠谱。

被动模式(Passive Mode)才需要你重点开端口

目前绝大多数FTP客户端(FileZilla、WinSCP)默认采用被动模式,流程是:客户端连服务器的21端口,服务器回复“我在某个端口段等你来连”,然后客户端再向这个随机端口发起数据连接。

这里就是防火墙设置的痛点:被动模式下,21端口固定,但数据端口是动态的,你需要在防火墙里放行一个连续的端口段(比如30000-31000),并把FTP服务端配置为只使用这个端口段,规则才能闭环。

vsftpd防火墙设置教程:CentOS/Rocky Linux实操

Linux生态里,vsftpd是用的最多的FTP服务端,很多教程只告诉你“放行21端口”,结果客户端还是报“Failed to retrieve directory listing”,咱们一步步把规则写对。

放行21端口之外,还得指定并放行被动端口段

首先编辑vsftpd配置文件,把被动端口段固定下来:

vim /etc/vsftpd/vsftpd.conf

在文件末尾加上:

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
pasv_address=你的服务器公网IP

ftp服务器防火墙的设置规则

最后一行尤其关键,如果服务器在NAT后面(比如云主机),不写这行,客户端拿到的数据连接地址就是内网IP,连进来必然失败,保存后重启vsftpd服务:

systemctl restart vsftpd

firewalld和iptables配置对比

不同Linux发行版用的防火墙工具不一样,规则也略有差别。

以firewalld为例(默认使用)

CentOS 7及以上、Rocky Linux默认走firewalld,执行以下命令:

firewall-cmd --permanent --add-port=21/tcp
firewall-cmd --permanent --add-port=30000-31000/tcp
firewall-cmd --reload

这里用端口段而非单一端口,就是为了配合被动模式的动态端口分配,注意,有些教程还让你加--add-service=ftp,那个只放行21端口,不解决数据连接问题。

iptables用户看这里

如果你用的是纯iptables环境,规则这样写:

iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 30000:31000 -j ACCEPT

用30000:31000这个冒号语法表示端口范围,请别忘了加-j ACCEPT,并记得保存规则(service iptables save),否则重启后规则就没了。

Windows服务器防火墙FTP端口设置

Windows系统自带的IIS FTP组件,或者第三方Serv-U,设置逻辑和Linux大同小异,唯一区别在于Windows防火墙的图形化配置界面。

IIS FTP的防火墙支持功能

打开IIS管理器 → 选中你的FTP站点 → 打开“FTP防火墙支持”功能,你会发现这里有一个数据通道端口范围的设置项,默认空着,意味着所有高位端口都可能被用来传输数据,这对防火墙规则来说是灾难。

实操步骤:

  • 在“数据通道端口范围”里填上30000-31000
  • 填写服务器的外部IP地址(云服务器要填公网IP)
  • 然后在Windows防火墙“高级设置”里,新建两条入站规则,分别放行TCP 21端口、TCP 30000-31000端口段

有些运维朋友会问,为啥不直接放行“FTP服务器”这个预定义规则呢?因为那个预定义规则只覆盖了21端口和边缘情况,很多Windows版本下对被动模式的支持不完整,特别是2008之后的系统,还是手动指定端口段最省心。

ftp服务器防火墙的设置规则

酷番云服务器FTP端口不通怎么解决

很多人在云服务器上搭建FTP失败,代码和防火墙都配了,从本地连还是报超时,问题往往出在安全组上,云厂商的安全组相当于一层独立于服务器操作系统之外的防火墙,你得两头检查。

本地防火墙先排掉

先用命令确认服务器端口是否处于监听状态:

netstat -tlnp | grep vsftpd

如果有LISTEN输出,说明服务活着,接下来确认系统防火墙规则是否真的生效了:

firewall-cmd --list-all

看输出里有没有21/tcp和30000-31000/tcp,这就排除了系统层面的问题,剩下的只能在安全组里排查。

云安全组和防火墙两头检查

登录酷番云控制台,找到你的服务器实例 → 安全组 → 入站规则列表,你要确保模板里有这两条规则:

  • TCP协议,源地址0.0.0/0,端口21
  • TCP协议,源地址0.0.0/0,端口30000-31000

这里有个典型误操作:用户在安全组里只放了21端口,系统防火墙却开了完整端口段,客户端能连接21端口(所以登录不报错),但当客户端尝试连接数据端口时却被底层拦截,现象就是“登录成功但列目录卡死”。

高效排查路径是:

  • 先在服务器本地用ftp 127.0.0.1测一次,看能不能完整显示目录
  • 如果本地能、公网不能,重点看安全组
  • 如果本地都不能,回头检查vsftpd配置和系统防火墙

常见场景:简米云FTP服务器防火墙配置要点

简米云服务器和酷番云大同小异,核心也是安全组和系统防火墙的双层放行,但简米云的普通安全组和企业安全组规则不同,普通安全组默认放行所有出方向,入方向需要显式添加,配置路径为:ECS实例 → 安全组 → 配置规则 → 入方向。

ftp服务器防火墙的设置规则

有一个细节容易踩坑:如果你的FTP客户端连接时提示“服务器发回了不可路由的地址”,这通常意味着你没有在vsftpd配置里设置pasv_address参数,导致服务器把自己的内网IP发给客户端,而客户端尝试连接内网IP自然失败,行业共识认为,这层配置在NAT环境中比防火墙本身还重要。

Q&A:FTP防火墙设置高频疑问

FTP主动模式端口不通,是不是防火墙拦了?

主动模式下,服务器向客户端发起连接时,源端口是20,目的端口是客户端随机开放的一个高位端口(客户端防火墙需要允许),如果你是局域网环境,建议直接在客户端防火墙里允许ftp-client程序,或者干脆关闭防火墙测试,如果必须在主动模式下公网使用,客户端防火墙需要放行本机1024以上端口,多数情况下这不现实,这才有了被动模式的普及。

修改了vsftpd端口范围后,防火墙规则是即时生效吗?

不是,vsftpd配置修改后需要重启服务,firewalld或iptables规则修改后也需要重载或重启防火墙服务,顺序建议是:先改配置,再重启服务,最后改防火墙规则,这样可以在测试时准确定位是服务端没起来还是防火墙拦截,验证时用firewall-cmd --reload就好,无需重启防火墙。

云服务器安全组和系统防火墙优先级怎么区分?

两者是叠加关系而非互相替代,数据包抵达服务器时,先经过安全组过滤,通过后才交给系统防火墙处理,只要有一层不放行,连接就会失败,配置FTP时需要同步检查这两层,安全组的端口段规则和系统防火墙的规则要完全一致,有个更省心的方案:把数据端口段设为1024-65535范围,但这样做会显著降低安全性,不建议在生产环境这么干。

防火墙本质上是帮你守住该开的门,而不是把门全焊死,FTP只要按“控制端口+数据端口段”的套路配置,不管跑在Windows还是Linux,不管在酷番云还是简米云,规则一通百通,下次遇到FTP连不上,先看端口段,再查安全组,基本不用折腾第二轮。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/ftp%e6%9c%8d%e5%8a%a1%e5%99%a8%e9%98%b2%e7%81%ab%e5%a2%99%e7%9a%84%e8%ae%be%e7%bd%ae%e8%a7%84%e5%88%99/

赞 (0)
佛山网站建设与设计怎么做?,哪家公司的性价比高?
上一篇 2026年8月18日 22:02
服务器几百人要多少钱
下一篇 2026年8月18日 22:07

相关推荐

  • js文件免费cdn哪里找?国内稳定高速的CDN加速服务推荐

    选择免费CDN加速JS文件时,核心结论是:优先使用国内头部云厂商(如阿里云、腾讯云)或知名开源镜像站(如BootCDN、jsDelivr)提供的稳定节点,以确保加载速度与合规性,避免使用来源不明的小众站点以防注入风险,在Web开发领域,前端资源的加载速度直接决定了用户体验和转化率,很多开发者,尤其是独立开发者和……

    2026年5月28日
    5300
  • 谷歌CDN怎么用?如何设置CDN加速提升网站打开速度

    谷歌CDN(Google Cloud CDN)通过利用Google全球边缘节点缓存静态内容,能显著降低延迟并提升网站加载速度,但其主要优势在于与Google Cloud生态的深度集成,而非作为独立的第三方加速服务直接对接非Google源站,在2026年的网络环境里,网站加载速度依然是影响用户体验和搜索引擎排名的……

    云计算 2026年6月6日
    8400
  • {pjax cdn}是什么,{pjax cdn}怎么配置

    PJAX CDN的核心价值在于通过局部刷新技术结合全球节点加速,显著降低首屏加载时间并减少服务器带宽压力,是2026年提升Web性能与用户体验的高效解决方案,在2026年的Web开发环境中,用户对页面加载速度的容忍度已降至毫秒级,传统的整页刷新模式不仅浪费带宽,更导致交互断点,而PJAX(PushState……

    2026年6月29日
    3000
  • 大模型怎么导入视频?大模型支持哪些视频格式导入

    大模型导入视频并非简单的“上传”动作,本质是一个涉及视频解码、关键帧抽取、语义对齐与向量化的复杂工程链路,核心结论是:直接将视频文件丢给大模型处理,在当前技术条件下既昂贵又低效,从业者普遍采用“视频转帧+多模态编码+文本对齐”的折中方案,通过牺牲部分时间维度的细节,换取模型的理解能力与算力成本的平衡, 这不是模……

    2026年4月2日
    11600
  • cdn行业会议有哪些?cdn行业会议时间地点

    2026年CDN行业会议的核心价值已从单纯的技术交流升级为“算力网络协同+AI内容分发+边缘安全合规”的三位一体战略决策场,参会者应重点关注边缘智能调度算法、低延迟实时交互场景落地及数据跨境合规解决方案,2026年CDN行业演进:从“分发”到“边缘智能”的范式转移随着生成式AI与实时互动的爆发,传统CDN仅作为……

    2026年6月14日
    3000
  • 三网加速CDN是什么?三网加速CDN哪个牌子好

    三网加速CDN通过智能路由调度,能显著降低跨运营商访问延迟,提升网站加载速度,是解决国内网络环境复杂导致访问卡顿的最优技术方案,国内互联网环境具有独特的“多网并存”特征,电信、联通、移动三大运营商之间的互联互通瓶颈长期存在,对于网站运营者而言,用户无论使用哪家运营商的网络,都期望获得一致且流畅的体验,传统的单线……

    2026年6月8日
    5800
  • 电信CDN被劫持怎么办?电信CDN劫持怎么解决

    电信CDN劫持并非技术故障,而是部分非合规节点运营商为追求流量变现或带宽收益,通过DNS污染、HTTP重定向或BGP路由劫持等手段,强制将用户请求引流至自有或合作广告节点的行为,其本质属于违规的网络中间人攻击,电信CDN劫持的底层逻辑与识别特征在2026年的网络环境中,随着IPv6普及和边缘计算的发展,CDN……

    2026年7月4日
    14610
  • 域名服务器具体存放哪些关键信息?,域名服务器的作用是什么?

    域名服务器(DNS)的核心职责,就是把域名翻译成IP地址,它存放的关键信息主要是各种资源记录和域名配置的权威数据,如果把域名比作门牌号,域名服务器就是那本“通讯录”,它不存网页图片,不存网站代码,但每一次浏览器输入网址后的跳转,都得先从这本“通讯录”里查到目标地址,接下来按需求权重拆解,看看里面到底装了什么,域……

    云计算 2026年10月22日
    300
  • cdn系统原理是什么,cdn系统原理

    CDN系统通过在全球边缘节点缓存静态资源,利用智能调度将用户请求就近分发,从而显著降低延迟、提升加载速度并减轻源站压力,是2026年高并发互联网架构的基石,CDN核心工作原理深度解析智能DNS调度与用户就近接入当用户在浏览器输入域名时,请求首先到达CDN的智能DNS解析系统,该系统并非随机分配,而是基于实时网络……

    2026年6月9日
    4600
  • 服务器安全培训怎么做?企业服务器安全防护培训课程哪家好

    2026年企业抵御数据勒索与合规处罚的终极防线,是建立基于零信任架构且全员参与的实战化服务器安全培训体系,2026服务器安全防御新态势威胁演进与合规双重施压根据国家计算机网络应急技术处理协调中心(CNCERT)2026年初发布的《网络安全威胁态势报告》,超过78%的严重数据泄露源于内部人员配置失误与意识盲区,攻……

    2026年4月27日
    5300

发表回复

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