宝塔端口怎么放行?面板防火墙 + 云服务器安全组两层都要开
端口打不开,别急着怀疑面板坏了。绝大多数情况是只放行了一层:要么在云服务器安全组开了、宝塔面板防火墙没开,要么反过来。端口放行要两层都开——先到云服务器控制台放行,再在宝塔面板「安全 → 系统防火墙」添加端口规则,两层都通,端口才能从外部访问到。
下面以最典型的「面板端口」为例,把两层操作讲清楚,再给出端口状态怎么看、常用端口参考,以及放行后还不通的排查方法。
端口为什么要开两层?
先理清一个关键点:云安全组和宝塔系统防火墙是两道独立的关卡。
- 云服务器安全组:云厂商在网络层做的访问控制,在阿里云、腾讯云、华为云等控制台里配置。它挡在服务器最外层,安全组没放行的端口,数据包根本进不到服务器。
- 宝塔系统防火墙:管理的是服务器本机的防火墙规则(CentOS 7+ 是 firewalld、Debian/Ubuntu 是 ufw、CentOS 6 是 iptables),在宝塔面板里配置。它管的是到了服务器之后,端口在系统层面是否放行。
两层谁都不管对方:安全组放行了,系统防火墙不放行,照样不通;系统防火墙放行了,安全组不放行,也照样不通。这就是「只开一层一直不通」的根本原因。
第一层:云服务器控制台放行端口
宝塔面板里做不了云安全组这步,必须去云厂商控制台操作。以阿里云为例:
阿里云 ECS 云服务器
- 登录阿里云控制台,进入 云服务器 ECS,点击要配置的实例名称。
- 在实例详情页,点选项卡中的 安全组 → 管理规则。
- 在安全组入方向规则页面,点 添加规则。

- 在弹窗里配置:
- 协议:选 自定义 TCP。
- 访问来源:除非明确要限制来源,否则选 0.0.0.0/0,允许所有 IP 访问。
- 端口范围:填宝塔面板的端口号。不清楚当前端口的话,SSH 登录服务器用
bt 14或cat /www/server/panel/data/port.pl查看。
- 点 提交,安全组规则就加好了。
阿里云轻量应用服务器
轻量应用服务器的入口叫「防火墙」,不是「安全组」,位置在实例详情的 防火墙 选项卡。点 添加规则,应用类型选 自定义、协议选 TCP、端口范围填面板端口号、来源 IP 填 0.0.0.0/0,点 确认添加 即可。
腾讯云、华为云
- 腾讯云:轻量应用服务器走「管理实例防火墙」,云服务器走「添加安全组规则」。
- 华为云:云服务器配置「安全组规则」,Flexus 云服务配置「Flexus L 实例安全组规则」。
各厂商入口名称略有差异,但本质都是「在云控制台放行对应端口」。具体对照文档见文末信息来源。
第二层:宝塔面板「安全 → 系统防火墙」添加端口规则
云安全组放行后,再回到宝塔面板放行系统防火墙。
- 登录宝塔面板,点击左侧导航栏 【安全】→【系统防火墙】。

- 点端口规则区域的 【添加端口规则】。

- 按需填写参数:
| 参数 | 说明 |
|---|---|
| 协议 | TCP、UDP 或 TCP/UDP,默认 TCP(如 HTTP 用 TCP,DNS 用 UDP)。 |
| 端口 | 单个端口(如 80)、端口范围(如 39000-40000),或逗号分隔多个端口(如 80,443)。 |
| 来源 | 所有IP:允许/拒绝所有 IP;指定IP:单个 IP、IP 段(如 192.168.1.0/24)或 IP 范围;指定域名:企业版专享,按域名限制来源。 |
| 策略 | 选 允许(放行)或 拒绝(屏蔽)。 |
| 备注 | 填端口用途(如「Web 服务端口」),便于后续管理。 |
- 点 提交,规则自动生效。
以放行面板端口为例:协议选 TCP,端口填你的面板端口号,来源选「所有IP」,策略选「允许」,备注填「宝塔面板端口」,提交即可。
如果面板端口改了,新端口同样要两层都放行。官方明确提醒:有安全组的服务器请提前在安全组放行新端口,否则改完端口就进不去面板了。
端口状态怎么看?「外网不通」是关键信号
添加规则后,在端口规则列表里能看到每条规则的状态,含义如下:
| 状态 | 说明 |
|---|---|
| 正常 | 端口已被服务监听,且防火墙规则生效,访问正常。 |
| 未使用 | 端口无服务监听、服务未启动,或规则已废弃(可删除无用规则)。 |
| 外网不通 | 可能原因:① 服务未监听外网 IP;② 云服务商安全组未放行;③ 规则未生效(尝试删除重加);④ 不影响访问时可忽略。 |
「外网不通」是最值得注意的信号——它说明面板这边的规则已经生效了,但外部还是访问不通,问题多半出在云安全组那一层没放行。这正是两层都要开的最直接体现。
常用端口参考
以下为宝塔官方文档给出的常用端口参考,是否放行按需判断,不要无脑全开:
| 端口 | 用途 | 是否需放行 |
|---|---|---|
| 22 | SSH 远程管理 | 必须(仅允许可信 IP) |
| 80 | HTTP 协议默认端口 | 必须(若启用 HTTP 服务) |
| 443 | HTTPS 协议默认端口 | 必须(若启用 HTTPS 服务) |
| 3306 | MySQL 数据库端口 | 按需(建议限制来源 IP) |
| 20/21 | FTP 主动模式端口 | 按需(配合被动模式端口范围 39000-40000) |
| 888 | phpMyAdmin 管理端口 | 按需(建议修改为非默认端口) |
除面板端口外,安装面板后终端通常还会提示放行 80(HTTP)、443(HTTPS)等端口。3306(MySQL)、21(FTP)这类端口,如无外部连接需求,建议不放行或限制来源 IP,降低被扫描攻击的风险。
放行后还是不通?三步排查
两层都放行了,端口还是不通,按这个顺序查:
# 1. 服务有没有在监听这个端口(没输出说明服务没起来)
netstat -tunlp | grep 端口号
# 2. 确认云安全组放行了相同端口(去云控制台核对)
# 3. 删除端口规则后重新添加,确保规则生效
如果端口状态显示「外网不通」,优先回第一层核对云安全组是否放行了相同端口——这是最常见的原因。
信息来源
本文事实以宝塔官方文档为准:《端口规则》、《如何放行面板端口》、《面板端口》、《修改宝塔面板默认端口》、《阿里云服务器开放宝塔面板端口》。
常见问题
端口放行到底要开哪几层?
两层:一是云服务器控制台的安全组/防火墙(在阿里云、腾讯云、华为云控制台操作),二是宝塔面板「安全 → 系统防火墙」的端口规则。两层是独立的关卡,漏任何一层端口都访问不通。很多人只开了一层,所以一直不通。
宝塔面板端口是多少?忘了怎么办?
面板端口在安装时随机生成,常见如 8888、9810 等。忘了的话用 SSH 登录服务器,执行 bt 14 查看面板默认信息,或 cat /www/server/panel/data/port.pl 直接看端口号。
宝塔防火墙里端口状态显示「外网不通」是什么意思?
表示防火墙规则已生效,但外部访问仍不通。官方给出的排查方向是:服务未监听外网 IP、云服务商安全组未放行、规则未生效(可删除后重新添加)。最常见的是云安全组没放行。
云安全组和宝塔系统防火墙有什么区别?
安全组是云厂商在网络层的访问控制,在云控制台配置;宝塔系统防火墙管理的是服务器本机(iptables/firewalld/ufw)的放行规则,在面板里配置。两者独立生效,都要放行同一端口。
放行后端口还是不通怎么排查?
按顺序查:服务是否在运行(netstat -tunlp | grep 端口号);云安全组是否放行相同端口;删除端口规则后重新添加。三层都确认后一般就能通。
常用端口要不要全放行?
不用全开。22(SSH)和启用了 HTTP/HTTPS 的 80/443 必须开;3306(MySQL)、20/21(FTP)、888(phpMyAdmin)按需开放,建议限制来源 IP 或修改默认端口,降低被扫描风险。