共用方式為


IoT Edge for Linux on Windows 安全性

適用於: 是圖示 IoT Edge 1.1

重要

IoT Edge 1.1 終止支援日期為 2022 年 12 月 13 日。 如需此產品、服務、技術或 API 的支援資訊,請參閱 Microsoft 產品生命週期。 如需更新至最新版IoT Edge的詳細資訊,請參閱 更新IoT Edge

Azure IoT Edge for Linux on Windows 獲益於在 Windows 用戶端/伺服器主機上執行的所有安全性供應項目,可確保所有額外的元件均保有相同的安全性內部部署。 本文提供依預設啟用的不同安全性內部部署,以及使用者可能啟用的一些選擇性內部部署的相關資訊。

虛擬機器安全性

IoT Edge for Linux (EFLOW) 策展虛擬機器以 Microsoft CBL-Curatr 為基礎。 CBL-Mariner 是 Microsoft 雲端基礎結構與邊緣產品和服務的內部 Linux 發行版本。 CBL-Mariner 旨在為這些裝置和服務提供一致的平台,以及強化 Microsoft 掌握 Linux 更新的能力。 如需詳細資訊,請參閱 CBL-Mariner 安全性

EFLOW 虛擬機建置在三點綜合安全性平臺上:

  1. 服務更新
  2. 唯讀根檔案系統
  3. 防火牆鎖定

服務更新

有安全性弱點發生時,CBL-Mariner 會透過 ELOW 每月更新提供最新的安全性修補檔和修正程式。 虛擬機器沒有套件管理員,因此無法手動下載並安裝 RPM 套件。 虛擬機器的所有更新都須使用 EFLOW A/B 更新機制來安裝。 如需 EFLOW 更新的詳細資訊,請參閱更新 IoT Edge for Linux on Windows

唯讀根檔案系統

EFLOW 虛擬機器由兩個主要分割區組成:rootfsdata。 rootFS-A 或 rootFS-B 分割區可互換,兩者的其中之一會在 / 掛接為唯讀檔案系統,這表示,儲存在此分割區內的檔案不允許任何變更。 另一方面,掛接於 /var 底下的 data 分割區是可讀取和可寫入的,因此允許使用者修改該分割區內的內容。 儲存在此分割區上的資料不會由更新程序操作,因此不會隨著更新而修改。

由於在特定使用案例中,您可能需要對 /etc/home/root/var 的寫入存取權,藉由將這些目錄重疊到我們的資料分割區上 (具體而言是目錄 /var/.eflow/overlays),即可對這些目錄進行寫入存取。 最終結果是,使用者可將任何內容寫入先前提及的目錄。 如需關於重疊的詳細資訊,請參閱 overlayfs

EFLOW 1.1LTS 分割區配置

資料分割 大小 描述
Boot 192 MB 包含開機載入器
RootFS A 2 GB 包含根檔案系統的兩個主動/被動分割區之一
RootFS B 2 GB 包含根檔案系統的兩個主動/被動分割區之一
AB 更新 2 GB 保留更新檔案。 請確定 VM 中一律有足夠的空間進行更新
資料 2 GB 至 2 TB 可跨更新儲存持續性資料的具狀態分割區。 可根據部署設定擴充

注意

分割區配置代表邏輯磁碟大小,而且不會指出虛擬機在主機 OS 磁碟上佔用的實體空間。

防火牆

根據預設,EFLOW 虛擬機器會使用 iptables 公用程式進行防火牆設定。 iptables 可用來設定、維護及檢查 Linux 核心中的 IP 封包篩選規則資料表。 預設實作僅允許連接埠 22 上的傳入流量 (SSH 服務),而封鎖其他所有流量。 您可以使用下列步驟來檢查 iptables 設定:

  1. 開啟提升權限的 PowerShell 工作階段

  2. 連線至 EFLOW 虛擬機器

    Connect-EflowVm
    
  3. 列出所有 iptables 規則

    sudo iptables -L
    

    EFLOW iptables 預設值

信賴平台模組 (TPM)

信賴平台模組 (TPM) 技術旨在提供硬體的安全性相關功能。 TPM 晶片是一種安全的密碼編譯處理器,其設計目的是執行密碼編譯作業。 此晶片包含多個實體安全性機制,使得它具備防竄改功能,在 TPM 安全性功能的加持下,惡意程式碼軟體便無法進行竄改。

EFLOW 虛擬機器不支援 vTPM。 不過,使用者可以啟用/停用 TPM 傳遞功能,讓 EFLOW 虛擬機器能夠使用 Windows 主機作業系統 TPM。 這可以支援兩個主要案例:

保護主機與虛擬機器的通訊

EFLOW 藉由公開豐富的 PowerShell 模組實作,提供了多種與虛擬機器互動的方式。 如需詳細資訊,請參閱適用於 IoT Edge for Linux on Windows 的 PowerShell 函式。 此模組需要提升權限的工作階段才能執行,且需使用 Microsoft Corporation 憑證加以簽署。

Windows 主機作業系統與 PowerShell Cmdlet 所需的 EFLOW 虛擬機器之間的所有通訊,都是使用 SSH 通道來完成的。 根據預設,虛擬機器 SSH 服務不允許透過使用者名稱和密碼進行驗證,而僅限使用憑證驗證。 憑證會在 EFLOW 部署程序期間建立,且對每個 EFLOW 安裝而言都是唯一的。 此外,為了防止 SSH 暴力密碼破解攻擊,IP 位址嘗試對 SSH 服務進行連線只要超過每分鐘三次,就會遭到虛擬機器的封鎖。

下一步

深入了解 Windows IoT 安全性內部部署

隨時掌握最新的 IoT Edge for Linux on Windows 更新