Gately v0.6.2 發布
2026 年 10 月 31 日
協定分流
新增「協定分流」模組,位於側邊欄「連接埠轉發」旁。它依用戶端最先送出的資料識別協定,把同一個連接埠上的連線送往不同的後端,全程不解密:
- TLS 依 SNI 網域與 ALPN 分流,HTTP 依 Host 分流,Minecraft 依握手封包中的伺服器位址分流;
- SSH、RDP、SOCKS4/5、OpenVPN(TCP,含 tls-auth 與 tls-crypt-v2)、XMPP、MQTT、PostgreSQL、RTSP、SIP、Redis、AMQP、SMB、Git、IRC、ADB、BitTorrent 各有一條路由,HTTP、RTSP、SIP 依請求行末尾的版本號區分;
- 「等待逾時」路由接收連上後不送資料的用戶端(VNC、MySQL 等由伺服器先發話的協定),識別逾時可精確到 0.1 秒;
- 無法識別或未命中的連線交給預設目標;每條路由可單獨向後端送出 PROXY 協定,列表顯示各路由的命中次數。
各協定的識別依據、網域與 ALPN 的比對順序,以及取代 haproxy SNI 分流與 sslh 的範例見 協定分流。
列表分組與排序(#48)
動態網域、連接埠轉發、協定分流、Web 服務站台、STUN、SSL 憑證、WAF、入侵防護、frp、Cloudflare 通道、File Browser、儲存掛載、網路喚醒、排程工作、通知、Web 終端機連線與 API 權杖等列表統一支援:
- 搜尋、拖曳排序(手機上使用上下箭頭)、多選後批次移到分組;
- 整組移動、就地重新命名與合併分組,摺疊狀態會被記住;
- 動態網域任務內的解析記錄也可以分組與排序。
調整分組與順序不會重新啟動正在執行的實例。詳見 列表分組與排序。
動態網域引用 STUN 位址(#47)
記錄值與 Webhook 中可以使用 {STUN_規則名_PORT}、{STUN_規則名_IP}、{STUN_規則名_ADDR}。STUN 規則的公網位址變化後,引用它的任務立即同步;只在 Webhook 中引用時也會呼叫一次 Webhook。規則未啟用或尚未穿透成功時,該記錄本輪略過,並在狀態中說明原因。詳見 動態網域 · 記錄值變數。
STUN 支援多層 NAT
開啟 UPnP / NAT-PMP 的規則會先向閘道查詢它自己的外部位址。與 STUN 觀察到的公網位址不同(例如路由器外層還有電信業者 NAT)時,公網連接埠屬於外層 NAT,只保留通道連接埠的對應,不再於路由器上追加對應,公網連接埠也不會在每次複查時變化。STUN 文件補充了全錐型與受限型電信業者 NAT、多層 NAT 下的 UPnP、固定本機連接埠與放行主機防火牆的說明。
安全強化
- 仍在使用預設密碼時,帳號、兩步驟驗證、Passkey、附加帳號、API 權杖、系統設定與 Web 終端機安全設定只能檢視,從備份還原與回溯這些設定的歷史版本同樣會被拒絕,必須先變更預設密碼;
- 唯讀帳號與唯讀 API 權杖讀取設定與日誌時,站台共用使用者密碼、分享連結權杖、請求標頭的值、金鑰,以及網址中的密碼、查詢參數與路徑裡的權杖都會遮罩;
- 瀏覽
files/與sftp/下的目錄需要寫入權限; - 只憑密碼的登入不再清零失敗次數,兩步驟驗證碼無法被暴力嘗試;
- 經可信代理存取時,X-Forwarded-For 與 X-Real-IP 不一致的處理更嚴格,偽造內網位址無法繞過「僅限內網存取」;
- 建立 API 權杖時,寫入權限可以執行伺服器命令的模組(動態網域、排程工作、入侵防護、STUN、SSL、Web 終端機、Docker、frp、File Browser、Cloudflare 通道)標示為「可執行命令」,並在授予時提醒;
- UPnP 閘道回傳的裝置描述與控制位址必須屬於回應的裝置。
其他改進
- 動態網域任務卡片上的每筆記錄可直接刪除(服務商處的解析記錄保留);
- 手機上的 Web 終端機按鍵列改為單行橫向捲動,預設隨螢幕鍵盤出現與收起;
- 修正 Android Chrome 與 iOS 加入主畫面時圖示透明的問題,管理介面與官網提供 Web App Manifest;
- 官網首頁與 README 改版。
修正
- 入侵防護規則命中過之後,再次編輯儲存時出現「unknown field lastSeen」錯誤;
- 多張憑證涵蓋同一網域時,改用到期時間最晚的一張,憑證列表的排序與分組不再影響實際使用的憑證;
- 協定分流識別期間 ClientHello 只收到一部分就逾時時,不再把補零的資料轉發給後端;停止或修改規則時立即關閉仍在識別中的連線;
- Webhook 內文為 JSON 時其中的 STUN 變數未被替換。
升級提示
- 升級後首次啟動時,連接埠轉發中的 SNI 分流規則自動移到協定分流,key、名稱、啟用狀態、分組與路由保持不變;連接埠轉發已關閉的,協定分流也會關閉;擁有連接埠轉發權限的 API 權杖同時獲得協定分流的同級權限。
- 透過 API 管理分流規則的腳本請改用
/api/protoroute/rules,路由欄位由sniRoutes改為routes;/api/portforward/rules不再接受mode欄位。這些規則的監控指標改為gately_protoroute_*。 - Docker 拉取新映像後重建容器;OpenWrt 覆蓋安裝新的
.apk/.ipk;飛牛在應用中心手動安裝新版.fpk;其他部署方式可在「系統設定」中線上升級。