分享方式:


監視 Microsoft Tunnel

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

使用系統管理中心 UI

登入 Microsoft Intune 系統管理中心,然後移至租用戶系統管理>Microsoft Tunnel 閘道>健全狀態

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

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

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

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

    • 狀況良好 – 上次簽入時間是在過去五分鐘內。
    • 狀況不良 – 上次簽入時間超過五分鐘。
  • 目前的連線 – 上次伺服器簽入時作用中的唯一連線數目。

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

  • 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 憑證是否已撤銷。 確定可以從 Tunnel 伺服器存取憑證中定義的端點。
    • 狀況不良 - TLS 憑證已撤銷。

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

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

  • 內部網路輔助功能 – 最近一次內部 URL 檢查的狀態。 您會將 URL 設定為 通道月臺設定的一部分。

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

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

    • 狀況良好 - 最新軟體版本的最新版本
    • 警告 - 一個版本後置
    • 狀況不良 - 支援後置和不支援的兩個或多個版本

    伺服器版本 不是 狀況不良時,請規劃 安裝 Microsoft Tunnel 的升級

  • 伺服器容器 – 判斷裝載 Microsoft Tunnel 伺服器的容器是否正在執行。

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

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

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

管理健康狀態閾值

您可以自定義下列 Microsoft Tunnel 健康情況狀態計量,以變更每個用來報告其狀態的閾值。 自定義是全租使用者,並套用至所有通道 Severs。 您可以自訂的健康情況檢查計量包括:

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

若要修改計量閾值

如何選取和設定健康狀態閾值的螢幕快照。

  1. 登入 Microsoft Intune 系統管理中心,並移至租使用者管理>Microsoft Tunnel 閘道>健全狀況狀態

  2. 取 [設定閾值]

  3. 在 [ 設定的閾值 ] 頁面上,為您想要自定義的每個健康情況檢查類別設定新的閾值。

    • 閾值會套用至所有站臺上的所有伺服器。
    • 取 [還原為預設值 ],將 所有 閾值還原回其預設值。
  4. 選取 [儲存]

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

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

伺服器健康情況檢查檢視的螢幕快照。

以圖表的形式檢視健康情況狀態趨勢 Microsoft Tunnel 閘道健康情況計量。 圖表的數據平均超過三小時區塊,因此最多可延遲三小時。

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

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

若要檢視趨勢圖表:

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

  2. 移至 [租使用者管理>] [Microsoft Tunnel 網關>健全狀況] [>選取伺服器],然後選取 [ 趨勢]

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

使用 mst-cli 命令行工具

使用 mst-cli 命令行工具來取得 Microsoft Tunnel 伺服器的相關信息。 此檔案會在安裝 Microsoft Tunnel 時新增至 Linux 伺服器。 此工具位於: /usr/sbin/mst-cli

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

檢視 Microsoft Tunnel 記錄

Microsoft Tunnel 會以 syslog 格式將信息記錄到 Linux 伺服器記錄檔。 若要檢視記錄專案,請使用 journalctl -t 命令,後面接著一或多個 Microsoft Tunnel 專案專屬的標記:

  • 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> 例如:

    • 2 月 25 日 16:37:56 MSTunnelTest-VM ocserv-access[9528]: ACCESS_LOG,41150dc4-238x-4dwv-9q89-55e987f30c32,f513245 5-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 - 顯示通道連線的遙測詳細數據。

    遙測記錄的格式如下:bytes_inbytes_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 Tunnel 的進行中程式,請執行 journalctl -t mstunnel_monitor -f

journalctl 的更多選項:

  • journalctl -h – 顯示 journalctl 的命令說明。
  • man journalctl – 顯示其他資訊。
  • man journalctl.conf 顯示設定的相關信息 如需 journalctl的詳細資訊,請參閱您所使用之Linux版本的檔。

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

作為診斷輔助功能,您可以在 Intune 系統管理中心內按兩下即可讓 Intune 直接從 Tunnel Gateway Server 啟用、收集和提交詳細資訊記錄給 Microsoft。 當您與 Microsoft 合作來識別或解決 Tunnel 伺服器的問題時,這些詳細信息記錄會直接提供給 Microsoft 使用。

您可以先從事件收集和上傳詳細信息記錄,再開啟支援事件,或在要求時,如果您已經與 Microsoft 合作檢查 Tunnel 伺服器作業。

若要使用此功能

  1. 啟 Microsoft Intune 系統管理中心移至 [租使用者管理>][Microsoft Tunnel 閘道>] 選取伺服器>,然後選取 [記錄] 索引卷標。

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

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

  • 首先,Intune 會擷取一組目前的 Tunnel 伺服器記錄,並將其直接上傳至 Microsoft。 這些記錄會使用伺服器目前的記錄詳細程度層級來收集。 根據預設,伺服器詳細資訊層級為零 (0) 。
  • 接下來,Intune 會為 Tunnel 伺服器記錄啟用四 (4) 的詳細資訊層級。 此詳細資訊層級的詳細數據會收集八小時。
  • 在詳細信息記錄收集的八小時內,應該重現所調查的問題或作業,以擷取記錄中的詳細資訊。
  • 8 小時後,Intune 會收集包含詳細資訊詳細數據的第二組伺服器記錄,並將它們上傳至 Microsoft。 在上傳時,Intune 也會重設 Tunnel 伺服器記錄,以使用預設的詳細資訊層級零 (0) 。 如果您先前已提高伺服器的詳細資訊層級,則在 Intune 將詳細資訊重設為零之後,您可以還原自定義詳細資訊層級。

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

  • 記錄收集 的開始結束 時間
  • 產生上傳時
  • 記錄檔會設定 詳細資訊層級
  • 事件 標識 碼,可用來識別該特定記錄集

顯示 [傳送詳細資訊伺服器記錄] 介面的螢幕快照。

在執行詳細資訊記錄收集時擷取問題之後,您可以將該記錄檔 的事件標識碼 提供給 Microsoft,以協助調查。

關於記錄收集

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

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

已知問題

以下是 Microsoft Tunnel 的已知問題。

伺服器健康情況

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

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

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

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

問題:P odman 無法識別或看到作用中的容器正在執行,且會在 Tunnel 伺服器的 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
    
  • 伺服器:

    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 Agent 之間的格式化日期有差異。 這些錯誤不會指出嚴重問題或防止連線。 從 2022 年 10 月之後發行的容器開始,應該解決格式化問題。

解決方案:若要解決這些問題,請將Podman或Docker) (代理程式容器更新為最新版本。 當探索到這些錯誤的新來源時,我們會在後續的版本更新中繼續修正這些錯誤。

通道的連線能力

裝置無法連線到 Tunnel 伺服器

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

如需檢視通道記錄的指引,請參閱本文中的 檢視 Microsoft Tunnel 記錄

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

如果此問題持續發生,請考慮使用cron排程公用程式將重新啟動命令自動化。 請參閱 如何在linux上使用cronopensource.com

後續步驟

Microsoft Tunnel 的參考