文件

中繼嚴格驗證

預設情況下,共享伺服器對到中繼的上游連線加密,但不驗證另一端是誰——與瀏覽器接受自簽憑證一樣屬於「首次使用即信任」。中繼 Strict TLS 改變了這一點:共享伺服器用它提供的 Root CA 檢查中繼憑證,只有憑證鏈、有效期和主機名稱全部通過才允許連線。這使得針對中繼鏈路的中間人攻擊實際上無從下手,代價只是多一步手工作業:把中繼的 Root CA 交給共享伺服器。它與上一頁「用戶端嚴格驗證」思路相同,作用於共享伺服器到中繼的上游鏈路。

在哪裡設定

嚴格驗證在共享伺服器——即 中繼位址 指向中繼的那台機器——上設定。在它的 Web 介面開啟 伺服器 設定頁:中繼金鑰 下方有一行 中繼 Strict TLS,顯示目前的 On / Off 狀態。展開後可以看到:

  1. 上游中繼 Root CA — 填寫中繼 Root CA 公鑰憑證(PEM)的多行輸入框;
  2. Off / On 切換 — 只有 PEM 能解析為有效憑證時才可選擇 On。
Web 介面 —— 伺服器設定中展開的中繼 Strict TLS 區塊:上游中繼 Root CA 輸入框、Off/On 切換與套用按鈕

中繼相關設定不會在編輯中途儲存:確認無誤後點擊 套用。儲存會立即以新設定重連上游中繼。

把 Root CA 交給共享伺服器

兩種方式,來源相同(中繼自身的 Web 介面):

  • 貼上分享串 — 在中繼伺服器的 Web 介面點擊 QR Code。分享串會在位址和金鑰之外一併內嵌中繼的 Root CA,貼到共享伺服器的 中繼位址 輸入框時 CA 欄位也會自動填充(見「中繼」下的「設定指南」)。嚴格模式仍保持關閉,直到你確認 CA 並自行開啟;
  • 複製貼上 — 在中繼的 憑證與 TLS 頁面點擊 複製 Root CA,把 PEM 貼到 上游中繼 Root CA 欄位。

CA 對每台共享伺服器都相同,且憑證續簽不會改變它——每個中繼設定一次即可。

信任 CA 之前,先確認拿到的是真的:中繼的 憑證與 TLS 頁面顯示 Root CA 的 SHA-256 指紋。把它與即將貼上的 PEM 比對。如果不一致,不要啟用嚴格驗證——改用可信管道重新取得 CA。

嚴格模式檢查什麼

切換到 On 後,上游 RelayPrimary 連線必須出示滿足以下條件的憑證:

  1. 憑證鏈能追溯到所設定的 Root CA——由其他任何 CA(包括公共系統根)簽發的憑證都會被拒絕;
  2. 在有效期內——已過期或尚未生效的憑證會被拒絕;
  3. SAN 與 中繼位址 的主機名稱匹配——為其他名稱簽發的憑證會被拒絕。

一點限制:只有上游中繼連線會被驗證。Terminal 與請求回連保持原有憑證政策。

任何一項檢查失敗,連線都會被拒絕,並在背景以遞增間隔重試;在檢查通過或你關掉嚴格模式之前,共享伺服器始終無法經由中繼存取。

常見失敗原因

  • 嚴格 TLS 驗證需要 Root CA PEM — 開關已開啟但 CA 欄位為空。請先貼上 PEM;
  • SAN 不匹配 — 你撥號所用的名稱或 IP 不在中繼憑證裡。在中繼的 憑證與 TLS 頁面新增該名稱(見「網域與 SAN 管理」頁面)並重新簽發;
  • 憑證過期或尚未生效 — 中繼的時鐘不準,或其葉子憑證續簽失敗。在中繼上查看憑證狀態;
  • 不是所設定 CA 簽發的 — 欄位中的 CA 屬於另一個中繼,或連線正被攔截。先比對指紋再繼續。