全部產品
Search
文件中心

:使用雲助手在Windows執行個體中安裝OpenSSH

更新時間:Jun 30, 2024

雲助手Agent是為ECS執行個體執行雲助手命令的程式,本文介紹通過雲助手Agent在Windows系統的ECS執行個體中安裝OpenSSH程式的方法。

前提條件

  • 確認ECS執行個體內已安裝雲助手Agent。具體操作,請參見安裝雲助手Agent

  • 確認安全性群組已添加SSH的22連接埠的規則。具體操作,請參見添加安全性群組規則

    說明

    關於雲助手Agent適用的作業系統版本,請參見雲助手概述使用限制章節。

操作步驟

  1. 登入ECS管理主控台

  2. 在左側導覽列,選擇營運與監控 > 雲助手

  3. 在頁面左側頂部,選擇目標資源所在的資源群組和地區。地區

  4. 在頁面右上方,單擊建立/執行命令

  5. 建立命令頁面,設定命令資訊。

    參數

    描述

    命令來源

    選擇輸入命令內容,建立一個新命令。

    命令名稱

    設定命令名稱。

    執行計畫

    單擊立即執行

    命令類型

    選擇命令類型。

    Windows:選擇Power Shell

    命令內容

    請粘貼以下命令到命令內容框中。

    $curDir = $PSScriptRoot
    Set-Location $curDir
    # Check the OS version
    $OSversion = [Environment]::OSVersion.Version
    if ($OSversion.Major -lt 6 -and $OSversion.Minor -lt 1) {
         throw "This scrip is not supported on Windows 2008 or lower"
    }
    $Arch =([Array](Get-WmiObject -Query "select AddressWidth from Win32_Processor"))[0].AddressWidth
    if ($Arch -ne "64") {
        throw "Only 64-bit system architecture is supported"
    }
    function Check-Env() {
        $srv_status = (Get-WmiObject -Class win32_service -Filter "name= 'sshd'").Status
        if ( $srv_status -match "OK") {
            Write-Host "system already installed opensshd"
            exit
        }
    }
    function Download-File($file_url = "{{sshd_download_url}}", $file_path = "C:\Programdata\OpenSSH-Win64.zip") {
        if (Test-Path $file_path) { return; }
        [System.Net.ServicePointManager]::SecurityProtocol=[System.Net.SecurityProtocolType]::Tls12
        Invoke-WebRequest -Uri $file_url  -OutFile $file_path -UseBasicParsing
        if (! $?) { throw "$file_url download to $file_path error" }
    }
    
    function Unzip-File($src_file = "C:\Programdata\OpenSSH-Win64.zip", $dst_file = "C:\Programdata") {
        Expand-Archive -Path $src_file -DestinationPath $dst_file 
        if (! $?) { throw "Unzip $src_file to $dst_file error, please check" }
    }
    function Install-Ssh() {
        powershell.exe -ExecutionPolicy Bypass -File C:\Programdata\OpenSSH-Win64\install-sshd.ps1
        if (! $?) {
            throw "Install openssh error, please check"
        }
        Start-Service sshd
        Set-Service -Name "sshd" -StartupType Automatic; Start-Service sshd
        if (! $?) {
            throw "set sshd enable auto start or start sshd error , please check"
        }
    }
    Check-Env
    Download-File
    Unzip-File
    Install-Ssh

    使用參數

    選擇。需填寫參數sshd_download_url,您可以從OpenSSH官網擷取需要下載安裝的OpenSSH版本,參數樣本:https://github.com/PowerShell/Win32-OpenSSH/releases/download/v9.5.0.0p1-Beta/OpenSSH-Win64.zip

    命令描述

    設定命令的描述資訊。建議設定命令用途等資訊,方便後續管理維護。

    執行使用者

    在ECS執行個體中執行命令的使用者名稱稱。

    使用最小許可權執行命令是許可權管理的最佳實務,建議您以普通使用者身份執行雲助手命令。更多資訊,請參見設定普通使用者執行雲助手命令

    說明

    預設情況下,在Linux執行個體中以root使用者執行命令,在Windows執行個體中以System使用者執行命令。

    執行路徑

    自訂命令的執行路徑。預設路徑如下:

    Windows:預設在雲助手Agent進程目錄C:\ProgramData\aliyun\assist\$(version)

    逾時時間

    設定命令在執行個體中的逾時時間,當執行命令的任務逾時後,雲助手將強制終止任務進程。

    單位為秒,預設為60秒,建議逾時時間設定為300,具體時間可根據網路情況調整。

    選擇執行個體

    選中需要執行命令的目標執行個體。

    選擇受管理的執行個體

    選中需要執行命令的目標執行個體。

    說明

    受管理的執行個體是雲助手託管的非阿里雲伺服器,更多資訊,請參見混合雲託管伺服器

  6. 單擊儲存,確認命令執行成功。

  7. 確認OpenSSH程式安裝成功。

    1. 通過VNC遠程登入Windows執行個體,

      具體操作,請參見通過VNC遠程登入Windows執行個體

    2. 單擊Dingtalk_20210510142550.jpg > Windows PowerShell,開啟PowerShell命令終端。

    3. 執行以下命令,確認安裝OpenSSH程式成功。

      NETSTAT.EXE -ano

      系統顯示類似如下,表示已正常監聽22連接埠。

      1be53a98a94bf5f6be7418edb4cf669bd49b8810ac54fbc73d5340136041ca9aQzpcVXNlcnNcbGl4aWFuZ1xBcHBEYXRhXFJvYW1pbmdcRGluZ1RhbGtcMTM3MTc0NDY0X3YyXEltYWdlRmlsZXNcMTYyNDI1NzY5NDUxNl9GNUNEMDFFNC1CQThCLTQ1MTItODNFNC1EM0ZCR.png

  8. 確認使用SSH用戶端遠端連線Windows執行個體成功。

    說明

    請使用Windows執行個體當前的使用者名稱和密碼登入執行個體。