什麼是搭配 Azure 原則和 PowerShell 的 Windows SSH 狀態控件(私人預覽版?

SSH 狀態控制可讓您使用熟悉的 Azure 原則和機器設定工作流程來:

  • 確保符合產業或組織中的標準
  • 減少遠端管理功能的攻擊面
  • 確保整個車隊的一致設定,以確保安全性和生產力

SSH 狀態控制也提供詳細的 原因, 說明如何判斷合規性或不符合規範。 這些原因可讓您更輕鬆地採取動作或完整檔合規性。

顯示符合規範 SSH 檢查清單的螢幕快照

SSH 狀態控制件會分析並強制執行大約 20 個 SSH 伺服器 (sshd) 參數。 您也可以自定義特定參數以符合您的環境。 例如,您可以自定義允許 SSH 存取的使用者和群組,以及埠號碼等等。

您可以在稽核或稽核設定模式中部署 SSH 狀態控制,以稽核裝置車隊、追蹤結果,然後自動補救車隊以適當的 sshd 標準。

私人預覽限制

這很重要

SSH 狀態控制件處於私人預覽狀態,旨在觸發您與Microsoft之間的對話框。

  • 預覽適用於 與隔離的開發/測試 計算機搭配使用,其中任何問題(包括不小心將自己從 SSH 存取鎖定)都不會產生重大後果。
  • 預覽牽涉到匯入原則定義,而不是從 Azure 原則內建清單中加以選擇。
  • 為此,我們將同時提供稽核和稽核和設定工作流程。
  • 支援的 Windows SKU 目前 只有 Windows Server 2025

開始使用 Azure 原則

此範例著重於在 Azure 原則中快速開始使用。 它會簡化假設,而且不會探索可能的所有專案。 例如,它會使用 PolicyDefinition 的預設 SSH 設定,而不是自定義參數,例如允許的使用者和群組。 SSH 狀態控制的完整資訊,包括近期預期設定和行為。 請注意,PowerShell 區段位於文章結尾的 區段中。

小提示

本文中會使用下列心理模型和術語。

此圖顯示我們的 Azure 訂用帳戶將包含 PolicyDefinition,其透過 PolicyAssignment 連結到包含機器的 ResourceGroup

  • PolicyDefinition :SSH 狀態控制定義和元數據,如 Azure 原則服務所示。
  • PolicyAssignment :將您的 SSH 狀態控制原則定義連結至應套用該原則的範圍,例如資源群組。
  • 機器 :能夠由 Azure 原則和機器設定管理的端點(也稱為客體設定)。 換句話說,已啟用 Arc 的電腦或 Azure VM。

A。 必要條件

  1. 具有建立資源群組、VM(或 Arc 機器)、原則定義和原則指派許可權的 Azure 帳戶。
  2. 如需其他必要條件,請選擇您慣用的體驗:
  1. 使用網頁瀏覽器,登入 Azure 入口網站或 您的本機對等專案。

B. 建立資源群組

  1. 建立資源群組。 在後續步驟中,這會用來設定原則的範圍,以及包含新的測試計算機。

建立資源群組的螢幕擷取

C. 建立 PolicyDefinition

備註

在私人預覽期間需要這個額外的步驟(建立而不是只選擇 PolicyDefinition)。

  1. 流覽至 [Azure 原則 概觀] 頁面。 例如,您可以使用 URI: https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyMenuBlade/~/Overview。
  2. 流覽至 [ 定義 ] 檢視。
  3. 按兩下 [+ 原則定義 ] 按鈕以建立新的 PolicyDefinition,輸入下列專案做為輸入。
    1. 定義位置:選擇您的 Azure 訂用帳戶,讓 PolicyDefinition 上線。
    2. 名稱:[預覽] 稽核 SSH 狀態控制原則 或 [預覽] 設定 SSH 狀態控制原則
    3. 類別:使用 [現有],然後選擇 [來賓設定]
    4. 原則規則:刪除既有的 JSON,並從預覽稽核 SSH 狀態控制原則定義或預覽稽核及設定 SSH 狀態控制原則定義貼上 PolicyDefinition JSON
  4. 按一下 儲存

說明上述步驟的螢幕擷取

D. 使用 PolicyAssignment 將 PolicyDefinition 套用至您的資源群組

謹慎

此原則會修改範圍內機器上的 sshd 設定。 這些指示可讓您將它指派給一開始空白的資源群組,稍後您將在此建立測試計算機。 如果您選擇指派給任何更廣泛的範圍,請非常小心。

  1. 流覽至原則 |列出 所有可用原則定義的定義頁面。
  2. 選取您稍早建立的 [預覽] SSH 狀態控制原則 原則定義
  3. 點選指派。
  4. 針對 [範圍 ] 選擇您稍後將建立新測試機器的資源群組。
  5. 繼續進行 [ 參數] 索引標籤。
    1. 除非您特別想要排除 Arc 連接的機器,否則請針對 [包含 Arc 連線的電腦] 選擇 [true]。
    2. 注意:如果您想要自定義 SSH 設定,例如允許的群組,請取消核取 [ 僅顯示參數...] 方塊,以顯示所有可用的參數。 如果您選擇指定允許或拒絕的使用者或群組,請注意您會輸入空白分隔字串,例如 userA userB。
  6. 繼續進行 [ 補救] 索引標籤。
    1. 注意:雖然此示範著重於新的計算機,但在您希望 PolicyAssignment 套用至現有機器的其他案例中,您可以核取 [ 建立補救工作] 方塊。
    2. 選擇 [使用系統指派的建立受控識別] 和您選擇的身分識別位置。
  7. 繼續 檢閱 + 建立
    1. 選擇 [建立] 以完成 PolicyAssignment。

顯示上述 PolicyAssignment 步驟範例的螢幕快照

E. 建立新電腦

雖然新的 PolicyAssignments 可以套用至現有的機器,但此程式最多可能需要 24 小時的時間。 在本快速入門中,我們將著重於評估新計算機。 在此範例中,我們將建立 Azure VM,但您可以視需要建立已啟用 Arc 的電腦。

  1. 流覽至 Azure 虛擬機 體驗。
  2. 建立新的 VM,確保下列屬性:
    1. 訂用帳戶和資源群組應符合 PolicyAssignment 的範圍。
    2. 映像應該是 「Windows Server 2025」。
    3. VM 架構應該是 x64。
    4. VM 名稱、大小等其他屬性可以是您偏好的任何屬性。
  3. 等候 VM 建立完成,然後按兩下 [移至資源] 以連線到電腦概觀頁面
  4. 在左側導覽中,選取 [ 身分識別 ],並確定計算機具有系統受控識別
  5. 在左側導覽中,選取 [ 擴充功能 + 應用程式],然後選取 [+ 新增]
  6. 選擇 適用於 Windows 擴充功能的 Azure Machine 組態擴充功能 ,然後選取 [ 下一步]
  7. 選取 [檢閱 + 建立],然後 建立

顯示上述步驟範例的螢幕擷取

F. 繼續前休息一下

當涉及新的 PolicyDefinitions、PolicyAssignments 和機器時,可能需要幾分鐘的時間才能達到穩定狀態。 請考慮 等待至少 30 分鐘 ,再繼續進行下一個步驟。

G. 觀察合規性結果

下列步驟可讓您在不同的高度看到合規性匯總:

  • 依原則指派的合規性
    • 符合規範和不相容的計算機數目
    • 最高海拔高度,特別適用於大型機隊
  • 依機器的合規性
    • 每部機器具有是/否的計算機清單
  • 藉由設定特定計算機的合規性
    • 最深入的詳細數據層級,例如本文頂端的螢幕快照。

小提示

第一次遇到原則時,您的新計算機可能會判斷為不符合規範。 原則中的預設 SSH 設定比預設設定的 OS 映像更嚴格。 在另外 20 分鐘左右之後,您應該會發現您的電腦因為 SSH 狀態控制內建的補救邏輯而符合規範。

  1. 流覽至原則 |合規性 頁面。
  2. 選取 [預覽] SSH 狀態控制原則。
  3. 觀察報告符合規範/不符合規範的計算機數目
  4. 在 [資源合規性] 下,您可以看到個別計算機的狀態
  5. 若要向下切入至特定電腦的設定詳細資料:
    1. 按兩下電腦旁的 ... ,然後選擇 [ 檢視資源 ] 以連線到電腦的 [概觀] 頁面
    2. 在左側導覽的 [作業] 底下,按兩下 [ 組態管理 ] ([設定] 下的 [設定]
    3. 按兩下 [SecureShell]
    4. 產生的頁面會顯示組態中的每個設定,其中包含合規性的詳細數據,以及判斷合規性的方式。

顯示上述步驟的螢幕擷取

開始使用本機體驗 (PowerShell)

先決條件

若要套用基準,請確認基準已套用、移除基準,或檢視 PowerShell 中 OSConfig 的詳細合規性資訊,請使用下列索引卷標上的命令。

設定

若要套用 SSH 案例,請執行下列命令:

Set-OSConfigDesiredConfiguration -Scenario SSH -Default

驗證

若要確認 SSH 案例已正確套用,請執行下列命令:

Get-OSConfigDesiredConfiguration -Scenario SSH

檢查合規性

若要獲取指定情境所需的設定詳細資訊,請使用以下命令。 輸出會以數據表格式顯示,其中包含組態項目的名稱、其合規性狀態,以及不符合規範的原因。

若要檢查 SSH scenairo 的合規性詳細數據,請執行下列命令:

Get-OSConfigDesiredConfiguration -Scenario SSH | ft Name, @{ Name = "Status"; Expression={$_.Compliance.Status} }, @{ Name = "Reason"; Expression={$_.Compliance.Reason} } -AutoSize -Wrap

自訂設定

若要在 SSH 案例中自訂設定,您可以使用參數 '-Name' 和 '-Value' 來設定設定:

Set-OSConfigDesiredConfiguration -Scenario SSH -Name Banner -Value "Custom Banner"

後續步驟

請連絡Microsoft小組,以提供意見反應、功能要求等。