宝塔面板在GCP上能安装成功但默认无法访问,因GCP防火墙拦截8888/80/443端口;必须配置带网络标签(如bt-panel)的VPC防火墙规则,并按系统选用对应安装脚本(Debian/Ubuntu用wget脚本,CentOS系用curl脚本),安装前关闭SELinux,确保面板监听*:8888且进程运行正常。

宝塔面板在 GCP 上能装成,但默认根本打不开——不是安装失败,是 GCP 防火墙把 8888 端口(还有 80、443)全拦死了。必须手动配 VPC 防火墙规则,且得绑定网络标签,否则脚本跑完你也进不去面板。
安装命令要按系统选对脚本,别直接抄错链接
Debian/Ubuntu 和 CentOS 的安装脚本不同,混用会卡在依赖或 wget/curl 报错。GCP 上常见镜像如 Debian 12、Ubuntu 22.04、CentOS Stream 9 都需对应处理:
- Debian/Ubuntu:
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh - CentOS Stream / Rocky / AlmaLinux:
curl -sSO https://download.bt.cn/install/install_6.0.sh && bash install.sh(必须用curl,部分镜像没预装wget) - 安装前先关 SELinux(仅 CentOS 类):
setenforce 0,否则面板服务启动后立即被杀 - 安装过程中所有提示一律输
y,别跳过初始化步骤
防火墙规则必须带网络标签,否则形同虚设
GCP 的防火墙规则默认不生效,除非你给实例打了标签,且规则里明确写了“目标为具有该标签的实例”。只填 0.0.0.0/0 + tcp:8888 是没用的。
- 先给你的 GCP 实例加网络标签,比如
bt-panel(在实例编辑页 → “网络接口” → “网络标签”栏添加) - 在 VPC 防火墙新建规则时,“目标”选
指定目标标签,填入bt-panel - “协议和端口”选
指定的协议和端口,写死tcp:8888(别勾“允许所有”) - 源 IP 范围建议别直接填
0.0.0.0/0,临时调试可这么写,上线前务必缩为可信 IP 段,比如203.0.113.42/32
静态 IP 和防火墙是两回事,别以为绑了 IP 就能访问
很多人绑了外部静态 IP 后还是打不开面板,原因往往是:静态 IP 绑定了,但防火墙规则没同步更新,或者规则没生效(标签没对上)。GCP 不会自动把新 IP 和旧规则关联。
- 静态 IP 是让实例有固定出口地址,和入站访问无关
- 能否从浏览器访问
http://:8888,只取决于 VPC 防火墙是否放行该端口 + 实例是否有对应标签 + 面板进程是否真在运行(用ps aux | grep bt确认) - 如果改过面板端口(比如改成 8889),防火墙规则里的
tcp:8888就得同步改成tcp:8889,否则照样 502 或连接被拒 - 检查面板是否监听在公网地址:
ss -tlnp | grep :8888,输出里要有*:8888,而不是127.0.0.1:8888(后者表示只限本地访问)
最常被忽略的是网络标签和防火墙目标的匹配关系——它不像阿里云或腾讯云那样自动关联,GCP 要求你显式声明“这个规则只作用于打了某标签的机器”,漏一步,整个链路就断在第一环。



















