# 为你的 IP 打开 Civo 防火墙，再关回去。

Canonical URL: <https://civo-cloud-manager.app/zh/open-civo-firewall-for-your-ip/>

1.  [首页](https://civo-cloud-manager.app/zh/)
3.  为你的 IP 开防火墙

最后更新 2026年10月18日  作者： [Marcel R. G. Berger](https://marcelrgberger.com/)

手动流程、它留下的动态 IP 隐患，以及一条免费的菜单栏路径：到点自动关掉规则。

你现在坐在这里，需要连上一台 Civo 实例或者某个集群的 API。答案就是一条防火墙规则：查到自己的公网 IPv4，把 CIDR 写成 /32，只放行这一个地址上的那个端口。前半截 Civo 做得很省事，后半截却很危险，因为手动加的规则会一直留在那儿，直到有人去删。这页先把手动流程完整写一遍，再讲几乎没人处理的那部分：关回去。

## 同一条规则，从菜单栏打开

1.  01
    
    告诉应用你要管哪些防火墙
    
    首次启动时菜单栏盾牌会跑一遍初始设置：填 Civo API key，它会进 macOS Keychain；选区域；勾出你想控制的防火墙。每个勾选的防火墙配一个端口，那个输入框的初始值是 6443。
    
2.  02
    
    让它找出你的公网 IPv4
    
    检测先试 `api.ipify.org`，再试 ifconfig.me/ip，然后是 `icanhazip.com`，第一个返回有效公网地址的就用它。拿到 IPv6 或者私有地址会直接提示出错，不会写进规则，因为 Civo 的防火墙规则需要 IPv4 CIDR。
    
3.  03
    
    一次点击写入规则
    
    应用在选定端口上创建一条入站规则，CIDR 是检测到的地址加 /32，标签为 `civo-cloud-<hostname>-<firewall-name>`。Civo 在创建响应里返回确切的规则 ID，所以应用之后从不需要猜哪条规则是自己的。
    
4.  04
    
    决定它开多久
    
    定时访问提供 15 分钟、30 分钟、一小时和两小时。还有一个“Unlimited”，它只打开规则，完全不安排关闭，所以只在你打算自己去关的时候选它。
    
5.  05
    
    截止时间写在磁盘上
    
    每个关闭任务都带着防火墙 ID、规则 ID、区域和截止时间，原子地写进应用 Application Support 目录下的 `firewall-closures.json`。退出应用，截止时间还在：下次启动时，已经到期的任务会被关掉，弹窗都不用打开。老实说清楚它的边界：应用必须在运行、并且能连上 Civo，才能删掉一条规则。退出或者休眠并不会在服务端安排一次删除。
    
6.  06
    
    把地址存成带名字的预设
    
    把当前 IP 存成 Home 或者 Office 这样的名字，以后直接用这个预设开防火墙，不用重新检测。人在外面、却想给固定的办公室地址开访问时很好用。
    

## 新建的 Civo 防火墙到底是什么行为

Civo 的 API 文档写得很明白：创建规则时没有 allow 或 deny 可选，因为新防火墙的默认行为就是全部拒绝，你只打开需要的端口。所以你自己创建的防火墙一开始是关着的，加的每一条规则都是放行规则。坑在另一边。每个区域都自带一个名字就叫 Default (all open) 的防火墙，Civo 自己的文档也说它所有端口都是开的，并建议你改掉它。所以那个被反复问到的问题，正确答案是：你自己的防火墙默认拒绝，区域自带的 Default 防火墙不是。

## 完整的手动流程

第一步，拿到公网 IPv4：curl `-s` `https://api.ipify.org`。第二步，加规则。用 Civo CLI 就是 civo firewall rule create `<firewall_id>` `--protocol=TCP` `--startport=6443` `--endport=6443` `--cidr=203.0.113.42/32` `--direction=ingress` `--label=`'laptop'。第三步，也是最容易被跳过的一步：把返回的规则 ID 记下来，方便事后删除。注意默认值：不写 `--cidr`，CLI 会用 `0.0.0.0/0`，那等于把端口开给整个互联网，而不是开给你。控制台那条路形状一样：Actions，然后 Rules，接着填单个端口或者端口范围、协议、方向和 CIDR。

## 规则比你加它的理由活得久

Civo 的防火墙规则没有过期时间。它会一直在，直到有人或者某个 API 调用把它删掉。在固定地址的商用线路上，这顶多算不整洁。在家庭宽带上，这是实打实的暴露，因为多数家用 ISP 会在重连或者每晚续租时换掉地址。你放行的那个 /32 随后被交给别人家的路由器，于是你的规则正在放一个陌生人进 6443，而你自己被挡在外面，正在写第二条规则。每一条手写规则都是一小笔债，只有你记得去删的时候才算还上。

## 为什么应用永远删不掉你自己写的规则

归属是由标签决定的，不是端口，也不是地址。应用只创建标签为 `civo-cloud-<hostname>-<firewall-name>` 的规则，为 Kubernetes API 连接打开的规则则换成 k8s-api 后缀。批量“全部关闭”会列出每个受管防火墙上的规则，只删掉标签以本机那个前缀开头的。手写的生产规则没有这种标签，所以永远不会成为候选。有一点值得说明：状态查询失败在菜单栏里同样会显示成已关闭或未知，所以界面上的显示不能当作服务端已关闭的证据。事关重大时，去 Civo 控制台确认。

## 6443 这个端口为什么总是出现

6443 是 Kubernetes API server 的端口。Civo 的 k3s 集群把 endpoint 公布成 `https://<master-ip>:6443`，kubectl、kubeconfig 和任何 Kubernetes 客户端连的都是它。如果集群防火墙不放行来自你地址的 6443，每条命令都会超时，这也是这个数字在 Civo 防火墙搜索里占据主导的原因。在应用里，6443 是初始设置时的默认端口，连接集群时会检查 API 访问，缺规则就替你打开。那条 Kubernetes 路径把自己的规则记在内存里，断开连接时清理掉，它不继承菜单栏定时队列的持久化和重试行为。

## 大家真正会问的问题

### 怎么只为自己的 IP 打开 Civo 防火墙？

先用 curl `-s` `https://api.ipify.org` 拿到公网 IPv4，然后在目标防火墙上创建一条入站规则，把这个地址写成 /32 的 CIDR。用 Civo CLI 是：civo firewall rule create `<firewall_id>` `--protocol=TCP` `--startport=6443` `--endport=6443` `--cidr=203.0.113.42/32` `--direction=ingress`。API 里没有 allow 或 deny 的选项，因为你创建的防火墙在你打开端口之前是全部拒绝的。把返回的规则 ID 留着，方便之后删掉这条规则。

### Civo 防火墙规则里的 /32 是什么意思？

在 CIDR 记法里，斜杠后面的数字表示地址有多少个高位是固定的。IPv4 地址是 32 位，所以 /32 把所有位都固定住，规则只匹配一个地址。203.0.113.42/32 就是这台主机，别的都不算。对比一下，/24 会覆盖 256 个地址，0.0.0.0/0 覆盖整个互联网，而创建规则时不写 CIDR，Civo 用的就是后者。

### 如果我的 IP 地址变了会怎样？

规则不会跟着你变。它继续放行那个旧地址，于是你失去访问，只能再加一条规则，而 ISP 接下来把那个地址分给谁，谁就继承了你开的口子。家庭宽带上这是常态，地址通常在重连或者每晚续租时轮换。解法不是找一个更好的 IP，而是一条会自己关掉的规则：只在固定的时间窗内开着端口，到点由截止时间把它删掉。

### CivoCloudManager 会动我已有的防火墙规则吗？

不会。它只删自己创建的规则，靠标签 `civo-cloud-<hostname>-<firewall-name>` 识别，Kubernetes API 访问用的是 k8s-api 后缀。批量“全部关闭”在删任何东西之前，都会先按这个前缀过滤每个受管防火墙的规则列表，所以你在 Civo 控制台、CLI 或者 Terraform 里手写的规则没有匹配的标签，永远不会被删。

### 退出应用之后自动关闭定时器还在吗？

截止时间还在。每个任务都把防火墙 ID、规则 ID、区域和关闭时间原子写入 Application Support 下的一个 JSON 文件，已经到期的任务会在下次启动时关掉。不存在的是无人值守的关闭：删除是从你 Mac 发出的一次 API 调用，所以应用必须在运行、并且能连上 Civo。退出或者睡过了截止时间，只会把关闭推迟到你再次启动应用，服务端那边什么都没安排。

指南

## 一步一步，以及诚实的对比。

-   [01 连接 Civo API Key 在 Civo 控制台生成密钥，粘贴一次，之后交给 macOS Keychain 保管。](https://civo-cloud-manager.app/zh/connect-civo-api-key-mac/)
-   [02 对比 Lens、OpenLens 和 k9s 三个与集群无关的工具，一个只认 Civo 的。差别决定了你想开着哪一个。](https://civo-cloud-manager.app/zh/civo-kubernetes-gui-vs-lens-k9s/)
-   [03 通过 S3 使用 Civo Object Storage 区域 endpoint，s3cmd、rclone 和 AWS CLI 的可用配置，以及原生客户端有什么不一样。](https://civo-cloud-manager.app/zh/civo-object-storage-s3-macos/)
-   [04 Mac 上的 Civo DNS 把域名指向 Civo 的 nameserver，之后把这个 zone 放在原生应用里管，而不是一个浏览器标签页。](https://civo-cloud-manager.app/zh/civo-dns-manager-mac/)
-   [05 更新日志 每一个已发布的版本，最新的在前，附带商店更新说明装不下的细节。](https://civo-cloud-manager.app/zh/changelog/)

深入了解

## 按 Civo 产品拆开细说。

CivoCloudManager 覆盖的每个 Civo 领域都有单独一页，讲清细节、取舍和架构。挑一个离你日常最近的。

-   [01 Mac 上的 Civo CLI 替代方案 图形界面在哪些地方赢过 CLI，哪些地方不如，以及两者怎么共存。](https://civo-cloud-manager.app/zh/civo-cli-alternative/)
-   [02 Mac 上的 Civo Kubernetes 图形界面 实时集群仪表盘、实时 pod 日志，不需要 kubectl。](https://civo-cloud-manager.app/zh/civo-kubernetes-gui/)
-   [03 Mac 上的 Civo Object Storage 浏览器 原生的 S3 兼容浏览器。闲置 bucket 可暂停到中央保险库。](https://civo-cloud-manager.app/zh/civo-object-storage-browser/)
-   [04 在 Mac 菜单栏管理 Civo 防火墙 每个防火墙一键开关，自动识别 IP，支持自动关闭定时器。](https://civo-cloud-manager.app/zh/civo-firewall-mac/)
-   [05 Mac 上的 Civo 费用仪表盘 来自 Civo charges API 的真实费用。周期选择器和月末预测。](https://civo-cloud-manager.app/zh/civo-cost-dashboard/)
-   [06 Civo 区域 哪些 Civo 产品在哪个区域运行，GPU 在哪里，以及 CivoCloudManager 如何把四个区域放进一个窗口。](https://civo-cloud-manager.app/zh/civo-regions/)

## 防火墙控制就是免费档。

七天完整功能试用结束之后，菜单栏为当前 IP 的开关、带名字的预设和自动关闭截止时间依然免费，所以这页讲的事，照做不花钱。

[在 Mac App Store 下载](https://apps.apple.com/cn/app/civocloudmanager-kubernetes/id6760776010?mt=12)

需要 macOS 15 (Sequoia) 或更新版本。

[返回 CivoCloudManager 概览](https://civo-cloud-manager.app/zh/)
