監視 Microsoft Tunnel

安裝 Microsoft 通道之後,您可以在 Microsoft Intune 系統管理中心檢視伺服器設定和伺服器健康情況。

使用系統管理中心 UI

登入 Microsoft Intune 系統管理中心,然後移至租用戶管理>Microsoft 通道閘道>健康情況狀態。

接下來,選取伺服器,然後開啟 [健康情況檢查 ] 索引標籤以檢視該伺服器健康情況狀態計量。 根據預設,每個指標都會使用預先定義的閾值來決定狀態。 下列計量 支援這些閾值的自訂:

  • CPU 使用量
  • 記憶體使用量
  • 磁碟空間使用量
  • 延遲

伺服器健康情況計量的預設值:

  • 上次簽入 – 通道閘道伺服器上次使用 Intune 簽入的時間。

    • 狀況良好 – 上次簽入是在最後五分鐘內。
    • 狀況不良 – 上次簽入已經超過五分鐘前。
  • 目前連線 — 上次伺服器簽入時處於作用中的唯一連線數目。

    • 狀況良好 – 連線數為 4,990 個或更少
    • 狀況不良 – 有超過 4,990 個作用中連線
  • 輸送量 — 上次伺服器簽入時通過通道閘道 NIC 的流量每秒百萬位元位元數。

  • CPU 使用量 — 通道閘道伺服器每五分鐘的平均 CPU 使用量。

    • 健康 - 95% 或以下
    • 警告 - 96% 到 99%
    • 狀況不良 - 100% 使用
  • CPU 核心數 – 此伺服器上可用的 CPU 核心數目。

    • 狀況良好 - 4 個或更多核心
    • 警告 - 1、2 或 3 核心
    • 狀況不良 -0 核心
  • 記憶體使用量 — 通道閘道伺服器每 5 分鐘的平均記憶體使用量。

    • 健康 - 95% 或以下
    • 警告 - 96% 到 99%
    • 狀況不良 - 100% 使用
  • 磁碟空間使用量 — 通道閘道伺服器使用的磁碟空間量。

    • 狀況良好 - 超過 5 GB
    • 警告 - 3-5 GB
    • 狀況不良 - 小於 3 GB
  • 延遲 — IP 封包抵達然後離開網路介面所需的平均時間量。

    • 狀況良好 - 少於 10 毫秒
    • 警告 - 10 毫秒到 20 毫秒
    • 狀況不良 - 超過 20 毫秒
  • 管理代理程式憑證 – 通道閘道使用管理代理程式憑證來向 Intune 進行驗證,因此請務必在到期之前更新它。 不過,它應該會自動自行更新。

    • 狀況良好 - 距離憑證到期還有 30 天以上。
    • 警告 - 距離憑證到期不到 30 天。
    • 狀況不良 - 憑證已過期。
  • TLS 憑證 - 傳送層安全性 (TLS) 憑證到期的天數,該憑證會保護用戶端與通道閘道伺服器之間的流量。

    • 健康 - 超過 30 天
    • 警告 - 30 天內
    • 狀況不良 - 憑證已過期
  • TLS 憑證撤銷 – 通道閘道嘗試使用線上憑證狀態通訊協定 (OCSP) 或 TLS 憑證定義的 CRL) 位址 (憑證撤銷清單來檢查傳輸層安全性 (TLS) 憑證的撤銷狀態。 此檢查要求伺服器能夠存取 OCSP 端點或憑證中定義的 CRL 位址。

    • 狀況良好 - 不會撤銷 TLS 憑證。
    • 警告 - 無法檢查 TLS 憑證是否已撤銷。 確保可以從通道伺服器存取憑證中定義的端點。
    • 狀況不良 - TLS 憑證已撤銷。

    規劃取代已撤銷的 TLS 憑證。

    若要深入瞭解線上憑證狀態通訊協定 (OCSP) ,請參閱 wikipedia.org 的線上憑證狀態通訊協定 。

  • 內部網路協助工具 – 最近一次檢查內部 URL 的狀態。 您可以將 URL 設定為 隧道站台組態的一部分。

    • 狀況良好 - 伺服器可以存取網站內容中指定的 URL。
    • 狀況不良 - 伺服器無法存取網站內容中指定的 URL。
    • 未知 - 當您尚未在網站屬性中設定 URL 時,會顯示此狀態。 此狀態不會影響網站的整體狀態。
  • 可升級性 – 伺服器連絡 Microsoft 容器存放庫的能力,允許通道閘道在版本可用時進行升級。

    • 狀況良好 - 伺服器在過去 5 分鐘內未連絡 Microsoft 容器存放庫。
    • 狀況不良 - 伺服器未連絡 Microsoft 容器存放庫超過 5 分鐘。
  • 伺服器版本 - 隧道閘道伺服器軟體相對於最新版本的狀態。

    • 狀況良好 - 使用最新的軟體版本保持最新狀態
    • 警告 - 落後一個版本
    • 狀況不良 - 兩個或多個版本落後且已終止支援

    當 伺服器版本 狀況 不良時,請規劃 安裝 Microsoft 通道的升級。

  • 伺服器容器 — 判斷裝載 Microsoft 通道伺服器的容器是否正在執行。

    • 狀況良好 - 伺服器容器狀態狀況良好。
    • 狀況不良 - 伺服器容器狀態狀況不良。
  • 伺服器設定 – 判斷伺服器設定是否已從 Microsoft Intune 網站設定成功套用至 Tunnel 伺服器。

    • 狀況良好 - 已成功套用伺服器設定。
    • 狀況不良 - 無法套用伺服器設定。
  • 伺服器記錄檔 — 判斷記錄檔是否已在過去 60 分鐘內上傳至伺服器。

    • 狀況良好 - 伺服器記錄是在過去 60 分鐘內上傳。
    • 狀況不良 - 過去 60 分鐘內尚未上傳伺服器記錄。

管理運行狀況閾值

您可以自訂下列 Microsoft Tunnel 健康情況狀態計量,以變更每個用來報告其狀態的閾值。 自訂是整個租用戶範圍,且適用於所有通道伺服器。 您可以自訂的運作狀態檢查指標包括:

  • CPU 使用量
  • 記憶體使用量
  • 磁碟空間使用量
  • 延遲

若要修改指標閾值:

如何選取和設定運行狀況狀態閾值的螢幕擷取畫面。

  1. 登入 Microsoft Intune 系統管理中心,然後移至租用戶管理>Microsoft 通道閘道>健康情況狀態。

  2. 選取 [設定閾值]。

  3. 在 「已設定閾值」 頁面上,為您要自訂的每個運作狀態檢查類別設定新的閾值。

    • 閾值適用於所有站台的所有伺服器。
    • 選取 [ 還原為預設 值],將 所有 閾值還原回預設值。
  4. 選取 [儲存]。

  5. 在 [健全狀況狀態] 窗格中,選取 [重新整理 ] 以根據自訂閾值更新所有伺服器的狀態。

修改閾值之後,伺服器 健全狀況檢查 索引標籤上的值會根據目前閾值自動更新以反映其狀態。

伺服器健康情況檢查檢視的螢幕擷取畫面。

以圖表形式檢視運行狀況趨勢 Microsoft 通道閘道健康情況計量。 圖表的資料是在三小時區塊內平均,因此最多可以延遲三個小時。

健康狀態趨勢圖表適用於下列計量:

  • 連線
  • CPU 使用量
  • 磁碟空間使用量
  • 記憶體使用量
  • 平均延遲
  • 輸送量

若要檢視趨勢圖:

  1. 登入 Microsoft Intune 系統管理中心。

  2. 移至 租用戶管理>Microsoft 通道閘道>健康情況狀態>選取伺服器,然後選取 [ 趨勢]

  3. 使用 [計量] 下拉式清單來選取您要檢視的計量圖表。

使用 mst-cli 命令列工具

使用 mst-cli 命令列工具取得 Microsoft Tunnel 伺服器的相關資訊。 安裝 Microsoft 通道時,這個檔案會新增至 Linux 伺服器。 該工具位於: /usr/sbin/mst-cli。

如需詳細資訊和命令列範例,請參閱 適用於 Microsoft 通道的 mst-cli 命令列工具。

檢視 Microsoft 通道記錄

Microsoft 通道會以 syslog 格式將資訊記錄到 Linux 伺服器日誌。 若要檢視記錄項目,請使用 journalctl -t 命令,後面接著一或多個 Microsoft 通道項目特有的標籤:

  • mstunnel-agent:顯示代理程式記錄。

  • mstunnel_monitor:顯示監視工作記錄檔。

  • ocserv - 顯示伺服器記錄檔。

  • ocserv-access - 顯示存取記錄檔。

    預設會停用存取記錄。 啟用存取記錄可能會降低效能,視伺服器上的使用中連線數量和使用模式而定。 記錄 DNS 連線會增加記錄的詳細資訊,這可能會變得雜訊。

    存取記錄具有下列格式: <Server timestamp><Server Name><ProcessID on Server><userId><deviceId><protocol><src IP and port><dst IP and port><bytes sent><bytes received><connection time in seconds> 例如:

    • Feb 25 16:37:56 MSTunnelTest-VM ocserv-access[9528]: ACCESS_LOG,41150dc4-238x-4dwv-9q89-55e987f30c32,f5132455-ef2dd-225a-a693-afbbqed482dce,tcp,169.254.54.149:49462,10.88.0.5:80,112,60,10

    重要事項

    在 ocserv-access 中,deviceId 值會識別在裝置上執行的 Microsoft Defender 的唯一安裝執行個體,並且不會識別 Intune 裝置識別碼或 Microsoft Entra 裝置識別碼。 如果在裝置上解除安裝 Defender,然後再重新安裝,則會產生 DeviceId* 的新執行個體。

    若要啟用存取記錄:

    1. 在 /etc/mstunnel/env.sh 中設定 TRACE_SESSIONS=1
    2. 設定 TRACE_SESSIONS=2 以包含 DNS 連線的記錄
    3. 執行 mst-cli server restart 以重新啟動伺服器。

    如果存取記錄太雜訊,您可以設定 TRACE_SESSIONS=1 並重新啟動伺服器來關閉 DNS 連線記錄。

  • OCSERV_TELEMETRY - 顯示與 Tunnel 連線的遙測詳細資料。

    遙測記錄具有下列格式,其中 bytes_in、 bytes_out和 持續時間 的值僅用於中斷連線作業: <operation><client_ip><server_ip><gateway_ip><assigned_ip><user_id><device_id><user_agent><bytes_in><bytes_out><duration> 例如:

    • 10 月 20 日 19:32:15 mstunnel ocserv[4806]: OCSERV_TELEMETRY,connect,31258,73.20.85.75,172.17.0.3,169.254.0.1,169.254.107.209,3780e1fc-3ac2-4268-a1fd-dd910ca8c13c, 5A683ECC-D909-4E5F-9C67-C0F595A4A70E,MobileAccess iOS 1.1.34040102

    重要事項

    在 OCSERV_TELEMETRY 中,deviceId 值會識別在裝置上執行之 Microsoft Defender 的唯一安裝執行個體,並不會識別 Intune 裝置識別碼或Microsoft Entra裝置識別碼。 如果在裝置上解除安裝 Defender,然後再重新安裝,則會產生 DeviceId* 的新執行個體。

journalctl 的命令列範例:

  • 若要僅檢視通道伺服器的資訊,請執行 journalctl -t ocserv。
  • 若要檢視遙測記錄,請執行 journalctl -t ocserv | grep TELEMETRY
  • 若要檢視所有記錄選項的資訊,您可以執行 journalctl -t ocserv -t ocserv-access -t mstunnel-agent -t mstunnel_monitor。
  • 新增至 -f 命令,以顯示記錄檔的作用中且持續的檢視。 例如,若要主動監視 Microsoft 通道正在進行的程序,請執行 journalctl -t mstunnel_monitor -f。

journalctl 的更多選項:

  • journalctl -h - 顯示 journalctl 的命令說明。
  • man journalctl – 顯示其他資訊。
  • man journalctl.conf顯示組態資訊 如需有關 journalctl 的詳細資訊,請參閱您所使用的 Linux 版本的文件。

輕鬆上傳 Tunnel 伺服器的診斷記錄

做為診斷輔助,您可以在 Intune 系統管理中心內按一下滑鼠,讓 Intune 啟用、收集及提交來自通道閘道伺服器的詳細記錄直接至 Microsoft。 當您使用 Microsoft 來識別或解決 Tunnel 伺服器的問題時,這些詳細記錄便可直接提供給 Microsoft。

您可以在開啟支援事件之前收集並上傳事件中的詳細記錄,或者如果您已經與 Microsoft 合作檢查通道伺服器作業,請應要求。

若要使用此功能:

  1. 開啟 Microsoft Intune 系統管理中心,移至 [租用戶管理>]、[Microsoft 通道閘道>],選取伺服器>,然後選取 [記錄] 索引標籤。

  2. 在 [記錄] 索引標籤上,找到 [傳送詳細伺服器記錄] 區段,然後選取 [傳送記錄]。

當您選取 [傳送通道伺服器的 記錄] 時,下列程序會開始:

  • 首先,Intune 會擷取目前的 Tunnel 伺服器記錄集,並將它們直接上傳至 Microsoft。 這些記錄是使用伺服器目前記錄詳細資訊層級來收集。 根據預設,伺服器詳細資訊層級為零 (0) 。
  • 接下來,Intune為通道伺服器日誌啟用 4 (4) 的詳細資訊層級。 此詳細層級的詳細資料層級會收集八小時。
  • 在八小時的詳細記錄收集期間,應重現正在調查的問題或作業,以擷取記錄中的詳細資料。
  • 八小時後,Intune 會收集第二組伺服器記錄,其中包含詳細資料,並將它們上傳至 Microsoft。 上傳時,Intune也會重設 Tunnel 伺服器記錄,以使用預設的詳細資訊層級 0 (0) 。 如果您先前提高了伺服器的詳細資訊層級,在 Intune 將詳細資訊重設為零之後,您可以還原自訂詳細資訊層級。

Intune 收集和上傳的每一組記錄都會識別為個別的記錄集,其中下列詳細資料會顯示在系統管理中心的 [傳送記錄] 按鈕下方:

  • 記錄集合的 開始 和 結束 時間
  • 產生上傳的時間
  • 記錄會設定 詳細資訊層級
  • 記錄收集 狀態 (已完成、失敗或正在進行中)

螢幕擷取畫面,顯示 [傳送詳細伺服器記錄] 介面。

在詳細記錄收集階段重現問題之後,Microsoft 可以使用收集的記錄來調查該問題。

關於記錄收集

  • Intune 不會停止或重新啟動通道伺服器來啟用或停用詳細記錄。
  • 八小時的詳細記錄期間無法延長或提前停止。
  • 您可以視需要經常使用 [ 傳送記錄] 程序來擷取詳細記錄的問題。 不過,增加記錄詳細資訊會增加通道伺服器的壓力,因此不建議作為常規設定。
  • 詳細記錄結束後,無論先前設定的詳細資訊層級為何,都會為通道伺服器記錄設定預設的詳細資訊層級為零。
  • 透過此程序會收集下列記錄:
    • mstunnel-agent (代理程式記錄)
    • mstunnel_monitor (監控工作記錄檔)
    • ocserv (伺服器記錄)

不會收集或上傳 ocserv-access 記錄。

已知問題

以下是 Microsoft 通道的已知問題。

伺服器健康情況

當伺服器健全狀況狀態顯示為離線時,用戶端可以成功使用通道

問題:在 [通道 健全狀況] 索引 標籤上,伺服器的健全狀況狀態會回報為離線,表示已中斷連線,即使使用者可以連線通道伺服器並連線到組織的資源。

解決方案: 若要解決此問題,您必須重新安裝 Microsoft Tunnel,這會使用 Intune 重新註冊 Tunnel 伺服器代理程式。 若要防止此問題發生,請在更新發行之後立即安裝 Tunnel 代理程式和伺服器的更新。 使用 Microsoft Intune 系統管理中心的隧道伺服器健康情況計量來監視伺服器健康情況。

使用 Podman,您會在mstunnel_monitor記錄中看到「執行檢查時發生錯誤」

問題:Podman 無法識別或看到正在執行的活動容器,並在通道伺服器的 mstunnel_monitor日誌 中報告「執行檢查時發生錯誤」。 下列是錯誤的範例:

  • 代理程式:

    Error executing Checkup
    Error details
    \tscript: 561 /usr/sbin/mst-cli
    \t\tcommand: $ctr_cli exec $agent_name mstunnel checkup 2> >(FailLogger)
    \tstack:
    \t\t<> Checkup /usr/sbin/mst-cli Message: NA
    \t\t<> MonitorServices /usr/sbin/mst-cli Message: Failure starting service mstunnel-agent
    \t\t<> main /usr/sbin/mstunnel_monitor Message: NA
    
  • Server:

    Error executing Checkup
    Error details
    \tscript: 649 /usr/sbin/mst-cli
    \t\tcommand: $ctr_cli exec $agent_name mstunnel checkup 2> >(FailLogger)
    \tstack:
    \t\t<> Checkup /usr/sbin/mst-cli Message: NA
    \t\t<> MonitorServices /usr/sbin/mst-cli Message: Failure starting service mstunnel-server
    \t\t<> main /usr/sbin/mstunnel_monitor Message: NA
    

解決方案:若要解決此問題,請手動 重新啟動 Podman 容器。 Podman 應該能夠識別容器。 如果問題持續發生或再次發生,請考慮使用 cron 建立作業,並在發現此問題時自動重新啟動容器。

使用 Podman,您會在 mstunnel-agent 記錄檔中看到 System.DateTime 錯誤

問題:當您使用 Podman 時,mstunnel-agent 記錄可能包含類似下列項目的錯誤:

  • Failed to parse version-info.json for version information.
  • System.Text.Json.JsonException: The JSON value could not be converted to System.DateTime

發生此問題的原因是 Podman 和 Tunnel 代理程式之間的格式日期不同。 這些錯誤並不表示發生嚴重問題或妨礙連線。 從 2022 年 10 月之後發行的容器開始,格式設定問題應該已解決。

解決方案:若要解決這些問題,請將 Podman 或 Docker) (代理容器更新至最新版本。 隨著發現這些錯誤的新來源,我們會在後續版本更新中繼續修正。

對隧道的連線能力

裝置無法連線至 Tunnel 伺服器

問題:裝置無法連線到伺服器,且通道伺服器 ocserv 記錄檔包含類似下列項目的項目: main: tun.c:655: Can't open /dev/net/tun: Operation not permitted

如需檢視 Tunnel 記錄的指導方針,請參閱本文中的檢視 Microsoft Tunnel 記錄 。

解決方案:使用 Linux 伺服器重新開機後重新啟動mst-cli server restart伺服器。

如果這個問題仍然存在,請考慮使用 cron 排程公用程式自動執行重新啟動命令。 請參閱 opensource.com 如何在 Linux 上使用 cron。

Microsoft 通道參考