在混合 Windows Server 節點上安裝 SSM Agent - AWS Systems Manager

AWS Systems ManagerChange Manager 不再開放給新客戶。現有客戶可以繼續正常使用該服務。如需詳細資訊,請參閱AWS Systems ManagerChange Manager可用性變更

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在混合 Windows Server 節點上安裝 SSM Agent

本主題說明如何在混合多雲端環境中的Windows Server機器上安裝 AWS Systems Manager SSM Agent 。如需在 EC2 執行個體上針對 Windows Server 安裝 SSM Agent,請參閱 在 Windows Server EC2 執行個體上手動安裝和解除安裝 SSM Agent

開始之前,請找出在混合啟用程序期間產生的啟用代碼和啟用 ID,如建立混合啟用,以向 Systems Manager 註冊節點中所述。您需在下列程序中指定代碼和 ID。

在混合多雲端環境中的非 EC2 Windows Server 機器上安裝 SSM Agent
  1. 登入混合多雲端環境中的伺服器或虛擬機器。

  2. 如果您使用 HTTP 或 HTTPS 代理伺服器,則必須在目前的 Shell 工作階段中設定 http_proxyhttps_proxy 環境變數。如果您不使用代理伺服器,則可以略過此步驟。

    對於 HTTP 代理伺服器,請設定此變數:

    http_proxy=http://hostname:port https_proxy=http://hostname:port

    對於 HTTPS 代理伺服器,請設定此變數:

    http_proxy=http://hostname:port https_proxy=https://hostname:port

    對於 PowerShell,設定 WinINet 代理設定:

    [System.Net.WebRequest]::DefaultWebProxy $proxyServer = "http://hostname:port" $proxyBypass = "169.254.169.254" $WebProxy = New-Object System.Net.WebProxy($proxyServer,$true,$proxyBypass) [System.Net.WebRequest]::DefaultWebProxy = $WebProxy
    注意

    PowerShell 操作需要 WinINet 代理組態。如需詳細資訊,請參閱SSM Agent 代理設定和 Systems Manager 服務

  3. 以高階 (管理) 模式開啟 Windows PowerShell。

  4. 複製以下命令區塊並貼到 Windows PowerShell。將每個範例資源預留位置取代為您自己的資訊。例如,當您建立混合啟用時產生的啟用碼和啟用 ID,以及 AWS 區域 您要SSM Agent從中下載的識別符。

    重要

    請注意以下重要詳細資訊:

    • 對非 EC2 安裝使用 ssm-setup-cli,可最大限度地提高 Systems Manager 安裝和組態的安全性。

    • ssm-setup-cli 支援用於確定代理程式下載來源的 manifest-url 選項。除非您的組織需要,否則請勿為此選項指定值。

    • 您可以使用此處提供的指令碼來驗證 ssm-setup-cli 的簽章。

    • 註冊執行個體時,請僅使用為 ssm-setup-cli 提供的下載連結。ssm-setup-cli 不應單獨存放以供日後使用。

    region 代表 AWS 區域 支援的 識別符 AWS Systems Manager,例如us-east-2美國東部 (俄亥俄) 區域。如需支援的 region 值的清單,請參閱《Amazon Web Services 一般參考》Systems Manager 服務端點一節的區域欄位。

    此外,ssm-setup-cli 還包括下列選項:

    • version:有效值為 lateststable

    • downgrade:將代理程式還原為較早版本。

    • skip-signature-validation:在下載和安裝代理程式期間略過簽章驗證。

    64-bit
    [System.Net.ServicePointManager]::SecurityProtocol = 'TLS12' $code = "activation-code" $id = "activation-id" $region = "us-east-1" $dir = $env:TEMP + "\ssm" New-Item -ItemType directory -Path $dir -Force cd $dir (New-Object System.Net.WebClient).DownloadFile("https://amazon-ssm-$region.s3.$region.amazonaws.com/latest/windows_amd64/ssm-setup-cli.exe", $dir + "\ssm-setup-cli.exe") ./ssm-setup-cli.exe -register -activation-code="$code" -activation-id="$id" -region="$region" Get-Content ($env:ProgramData + "\Amazon\SSM\InstanceData\registration") Get-Service -Name "AmazonSSMAgent"
  5. Enter 鍵。

注意

如果命令失敗,請確認您正在執行最新版本的 AWS Tools for PowerShell。

命令會執行下列動作:

  • 將 SSM Agent 下載並安裝到機器上。

  • 向 Systems Manager 服務註冊機器。

  • 傳回類似如下的請求回應:

        Directory: C:\Users\ADMINI~1\AppData\Local\Temp\2
    
    
    Mode                LastWriteTime         Length Name
    ----                -------------         ------ ----
    d-----       07/07/2018   8:07 PM                ssm
    {"ManagedInstanceID":"mi-008d36be46EXAMPLE","Region":"us-east-2"}
    
    Status      : Running
    Name        : AmazonSSMAgent
    DisplayName : Amazon SSM Agent

此機器現在是受管節點。這些受管節點現在會使用字首 "mi-" 進行標識。您可以使用 AWS CLI 命令 Fleet Manager或使用 API 命令 describe-instance-information,在 的受管節點頁面上檢視受管節點DescribeInstanceInformation

設定私有金鑰自動輪換

若要強化您的安全狀態,您可以設定 AWS Systems Manager Agent (SSM Agent) 自動輪換混合多雲端環境的私有金鑰。您可以使用 SSM Agent 3.0.1031.0 版或更新版本來存取此功能。使用下列程序開啟此功能。

設定 SSM Agent 以輪換混合多雲端環境的私有金鑰
  1. 在 Linux 機器中導覽至 /etc/amazon/ssm/,或在 Windows Server 機器中導覽至 C:\Program Files\Amazon\SSM

  2. amazon-ssm-agent.json.template 的內容複製到名為 amazon-ssm-agent.json 的新檔案。將 amazon-ssm-agent.json 儲存在 amazon-ssm-agent.json.template 所在的相同目錄中。

  3. 查找 ProfileKeyAutoRotateDays。輸入您想要的自動私有金鑰輪換之間的天數。

  4. 重新啟動 SSM Agent。

每次變更組態時,請重新啟動 SSM Agent。

您可以使用相同的程序來自訂 SSM Agent 的其他功能。如需可用組態屬性及其預設值的最新清單,請參閱組態屬性定義

取消註冊並重新註冊受管節點 (Windows Server)

您可以從 AWS CLI 或 Tools for Windows PowerShell 呼叫 DeregisterManagedInstance API 操作來取消註冊受管節點。以下是範例 CLI 命令:

aws ssm deregister-managed-instance --instance-id "mi-1234567890"

若要移除代理程式的剩餘註冊資訊,請移除 amazon-ssm-agent.json 檔案中的 IdentityConsumptionOrder 索引鍵。然後執行以下命令:

amazon-ssm-agent -register -clear

注意

只要您尚未達到指定啟用代碼和 ID 的執行個體限制,您就可以使用相同的啟用代碼和 ID,重新註冊內部部署伺服器、邊緣裝置或 VM。您可以使用 AWS CLI呼叫 describe-activations API,來驗證啟用代碼和 ID 的執行個體限制。執行命令後,驗證 RegistrationCount 的值是否不超過 RegistrationLimit。如果超過,您必須使用其他啟用代碼和 ID。

若要在 Windows Server 混合機器中重新註冊受管節點
  1. 連線至您的機器。

  2. 執行下列命令。務必使用您在建立混合啟用時產生的啟用代碼和啟用 ID 以及您想要從中下載 SSM Agent 的區域識別碼,取代預留位置的值。

    $dir = $env:TEMP + "\ssm" cd $dir Start-Process ./ssm-setup-cli.exe -ArgumentList @( "-register", "-activation-code=$code", "-activation-id=$id", "-region=$region" ) -Wait -NoNewWindow