🦞

AI Agent 自主代理三王實戰 — 通道篇

CH12 | 告別臨時網址——擁有你的專屬域名

一勞永逸解決 ngrok 網址每次都變的問題——用 Cloudflare Tunnel 給你的龍蝦一個永久不變的正式網址

📋 本章學習目標

  • 理解 ngrok 的限制和為什麼需要正式域名
  • 認識 Cloudflare Tunnel 的運作原理
  • 申請 Cloudflare 帳號並設定域名
  • 安裝和設定 Cloudflare Tunnel
  • 更新 LINE 和 Telegram 的 Webhook
  • 了解 HTTPS 和安全性的基本概念
1 / 12

12.1 為什麼要告別 ngrok?

ngrok 在學習階段非常好用——免費、安裝簡單、一行指令就能用。但長期使用有幾個讓人頭痛的問題:

問題影響
網址每次重啟都會變必須手動更新 LINE / Telegram 的 Webhook URL
免費版有連線數限制同時連線太多會被擋
免費版有流量限制訊息量大時可能斷線
網址很醜https://a1b2c3d4.ngrok-free.app 很難記
ngrok 服務掛掉你也掛第三方服務出問題你的龍蝦就斷線
免費版會顯示警告頁面第一次造訪會看到「Visit Site」中間頁
⚠️ 每次電腦重開機、每次 ngrok 重啟,你就得去 LINE Developers Console 更新 Webhook URL。第一次「好吧,學習嘛」,第二次「有點煩」,第三次就想摔滑鼠了!
2 / 12

ngrok vs Cloudflare Tunnel 比較

Tunnel 架構圖
比較項目ngrok(免費版)Cloudflare Tunnel
網址隨機字串,每次不同你自己取的,永遠不變
費用免費(有限制)免費(Tunnel 本身免費)
穩定度一般高(Cloudflare 全球 CDN)
HTTPS有(自動)
速度會多一層延遲全球節點加速
好記程度❌ 亂碼網址✅ lobster.你的域名.com
✅ 唯一的「代價」是你需要有一個域名。好消息是,域名很便宜——有些 .xyz 域名第一年只要 30-50 元台幣!
3 / 12

12.2 Cloudflare Tunnel 原理

Cloudflare Tunnel(以前叫 Argo Tunnel)的概念很簡單——在你的電腦和 Cloudflare 之間「打一條隧道」:

LINE 伺服器
    ↓ 訊息傳到你的域名
Cloudflare 全球網路(幫你接收訊息)
    ↓ 透過「隧道」送到你的電腦
你的電腦上的龍蝦(port 18789)

外面的人只看到你的域名和 Cloudflare,完全不知道你的電腦 IP 在哪裡

Cloudflare 的四大關鍵優勢

🏷️ 用自己的域名

網址永遠不變,Webhook 設定一次搞定

🌍 全球最大 CDN 之一

穩定度和速度都比 ngrok 更好

💰 Tunnel 完全免費

你只需要付域名的錢(最便宜 30 元/年)

🔒 自動 HTTPS

Cloudflare 自動幫你申請和管理 SSL 憑證

4 / 12

12.3 申請 Cloudflare 帳號與取得域名

取得域名的方式

✅ 方式一:直接在 Cloudflare 買(最簡單)

價格是「成本價」(沒有加價),直接跟 Cloudflare 整合,省去後面設定 DNS 的步驟

🔄 方式二:在其他域名商買,再轉到 Cloudflare 管理

常見:Namecheap(便宜)、GoDaddy(老牌)

域名怎麼選?

域名後綴大約價格(年)建議
.com300-400 元最通用,但好名字都被註冊了
.xyz30-60 元便宜,學習用很適合
.top30-50 元便宜
.tw600-800 元台灣域名,較正式
.dev350-450 元開發者感,自帶 HTTPS
💡 學習用的話,買一個便宜的 .xyz 就夠了。例如 mylobster.xyz
5 / 12

把域名加入 Cloudflare

Cloudflare Dashboard

申請帳號(3 步驟)

  1. dash.cloudflare.com/sign-up,用 Email 註冊
  2. 驗證 Email
  3. 登入 Cloudflare Dashboard

新增域名(如果不是在 Cloudflare 買的)

  1. Dashboard 點 「Add a site」,輸入域名
  2. 選擇 「Free」 方案
  3. Cloudflare 會給你兩組 Nameserver
  4. 到域名商把 Nameserver 改成 Cloudflare 給的那兩組
  5. 回到 Cloudflare 點 「Done, check nameservers」
  6. 等待 DNS 生效(幾分鐘到幾小時不等)
Nameserver 設定
💡 DNS 切換需要時間「傳播」到全球的 DNS 伺服器。Cloudflare Dashboard 顯示域名狀態為「Active」就表示成功了。
6 / 12

12.4 安裝與設定 Cloudflare Tunnel

步驟一:安裝 cloudflared

# Windows PowerShell
winget install Cloudflare.cloudflared

# 確認安裝成功
cloudflared --version

步驟二:登入 Cloudflare

cloudflared tunnel login

會自動打開瀏覽器,登入帳號後選擇域名。成功後電腦上會存一個認證檔案(cert.pem)。

步驟三:建立隧道

# 建立隧道(lobster 是自取的名字)
cloudflared tunnel create lobster

# 設定 DNS 指向
cloudflared tunnel route dns lobster bot.mylobster.xyz
💡 建立隧道後會顯示一串 UUID(如 a1b2c3d4-5678-90ab-cdef-1234567890ab),記下來等一下設定檔要用。
7 / 12

建立設定檔與啟動隧道

步驟四:建立 config.yml

路徑:C:\Users\你的使用者名稱\.cloudflared\config.yml

tunnel: 你的隧道UUID
credentials-file: C:\Users\你的使用者名稱\.cloudflared\你的隧道UUID.json

ingress:
  - hostname: bot.mylobster.xyz
    service: http://localhost:18789
  - service: http_status:404
設定項目說明
tunnel你的隧道 UUID
credentials-file認證檔案路徑(建立隧道時自動產生)
hostname你設定的域名
service: http://localhost:18789指向龍蝦 Gateway 的埠
http_status:404其他所有請求回 404(安全考量)

步驟五:啟動隧道

cloudflared tunnel run lobster
✅ 看到四條 「Connection registered」 就表示隧道通了!
8 / 12

測試隧道與開機自動啟動

Tunnel 運行中

測試隧道是否正常

# 在瀏覽器輸入你的域名
https://bot.mylobster.xyz

# 或用 curl 測試
curl https://bot.mylobster.xyz/health

如果龍蝦有在運行(openclaw gateway start),你應該會看到龍蝦的回應。

安裝為 Windows 服務(開機自動啟動)

# 安裝為服務
cloudflared service install

# 確認服務狀態
cloudflared service status

# 修改 config.yml 後需要重啟
cloudflared service restart
✅ 安裝為服務後,每次電腦開機隧道就會自動啟動,不用手動操作!
9 / 12

12.5 更新 LINE / Telegram Webhook

隧道建好了,現在要告訴 LINE 和 Telegram:龍蝦的新地址在這裡。

Webhook 驗證

更新 LINE Webhook

  1. 到 LINE 官方帳號管理後台(manager.line.biz
  2. 進入 Channel → Messaging API 分頁
  3. 把 Webhook URL 改成新域名:
舊的:https://a1b2c3d4.ngrok-free.app/line/webhook
新的:https://bot.mylobster.xyz/line/webhook
  1. 「Verify」 → 看到 「Success」 就大功告成
  2. 確認 「Use webhook」 是開啟的

更新 Telegram Webhook

# 更新 Webhook 網址
openclaw config set telegram.webhookUrl https://bot.mylobster.xyz

# 重啟 Gateway
openclaw gateway restart
從此以後你不需要再改 Webhook 了!不管電腦重開幾次、關機多少天,網址永遠不變。
10 / 12

12.6 HTTPS 與安全性

📬 HTTP

訊息是「明信片」,中間的人都看得到內容

🔒 HTTPS

訊息是「密封的信」,只有寄件人和收件人看得到

LINE 和 Telegram 都要求 Webhook URL 必須是 HTTPS。Cloudflare 會自動幫你搞定——你什麼都不用做!

Cloudflare Tunnel 的安全優勢

🛡️ IP 隱藏

外面的人只看到 Cloudflare 的 IP,不知道你的電腦在哪

🚫 DDoS 防護

有人惡意攻擊,Cloudflare 幫你擋

🔐 全程加密

LINE→Cloudflare 加密,Cloudflare→你的電腦也加密

🔑 UUID 保護

只有知道隧道 UUID 的人才能操控隧道

⚠️ 安全注意事項:不要分享 .cloudflared 資料夾的檔案、域名要記得續約、Cloudflare 帳號要設強密碼和兩步驟驗證。
11 / 12

12.8 小結與展望

☁️ Cloudflare 帳號

全球最大的 CDN 和安全服務,免費方案功能強大

🏷️ 自己的域名

好記、好看、永遠不變,最便宜 30 元/年

🚇 Cloudflare Tunnel

安全的隧道連接,可設定開機自動啟動

🔒 自動 HTTPS

加密通訊,LINE 和 Telegram 都認可。一次設定永久有效!

常見問題速查
Q:Tunnel 真的免費嗎? A:是的,只需付域名費用。
Q:可以同時保留 ngrok? A:可以,但 Webhook 只能指向一個。
Q:雲端安裝需要 Cloudflare 嗎? A:不需要,雲端方案已有固定網址。

📖 下一章預告:CH13 WhatsApp、Discord……全都串起來
LINE 和 Telegram 只是龍蝦的兩個「家」——OpenClaw 支援超過 22 種通道!下一章帶你認識 WhatsApp、Discord、Slack 等更多通道。

前往 CH13 ➡️
12 / 12