すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:クラウドアシスタントを使用した Windows インスタンスへの OpenSSH のインストール

最終更新日:Jun 23, 2026

クラウドアシスタントエージェントは、ECS インスタンス上でクラウドアシスタントのコマンドを実行します。このトピックでは、クラウドアシスタントエージェントを使用して、Windows ベースの ECS インスタンスに OpenSSH をインストールする方法について説明します。

前提条件

  • インスタンスにクラウドアシスタントエージェントがインストールされていること。詳細については、「クラウドアシスタントエージェントのインストール」をご参照ください。

  • ECS インスタンスにパブリック IP アドレスが自動的に割り当てられていること。または、Elastic IP アドレス (EIP) が ECS インスタンスに関連付けられていること。パブリック帯域幅を有効にする方法については、「パブリック帯域幅の有効化」をご参照ください。

  • インスタンスのセキュリティグループに、TCP ポート 22 でのインバウンドトラフィックを許可するルールが設定されていること。詳細については、「セキュリティグループルールの追加」をご参照ください。

    説明

    クラウドアシスタントエージェントがサポートするオペレーティングシステムのバージョンについては、「クラウドアシスタントの概要」の「使用制限」セクションをご参照ください。

操作手順

  1. ECS コンソール - クラウドアシスタントに移動します。

  2. ページの左上隅で、リージョンとリソースグループを選択します。地域

  3. 右上隅にある コマンドの作成・実行 をクリックします。

  4. 実行コマンドの作成 ページで、コマンドを設定し、ターゲットインスタンスを選択し、その他のパラメーターを設定します。

    パラメーター

    説明

    コマンド情報

    ソース

    コマンドの内容を入力 を選択して、新しいコマンドを作成します。

    コマンドタイプ

    コマンドタイプを選択します。

    Windows: PowerShell を選択します。

    コマンド内容

    • 次のコマンドをコマンド内容ボックスに貼り付けます:

      $curDir = $PSScriptRoot
      Set-Location $curDir
      # OS バージョンを確認
      $OSversion = [Environment]::OSVersion.Version
      if ($OSversion.Major -lt 6 -or ($OSversion.Major -eq 6 -and $OSversion.Minor -lt 1)) {
           throw "このスクリプトは Windows 2008 以前ではサポートされていません"
      }
      $Arch =([Array](Get-WmiObject -Query "select AddressWidth from Win32_Processor"))[0].AddressWidth
      if ($Arch -ne "64") {
          throw "64 ビットのシステムアーキテクチャーのみサポートされています"
      }
      function Check-Env() {
          $srv_status = (Get-WmiObject -Class win32_service -Filter "name= 'sshd'").Status
          if ( $srv_status -match "OK") {
              Write-Host "システムには既に 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 から $file_path へのダウンロードエラー" }
      }
      function Unzip-File($src_file = "C:\Programdata\OpenSSH-Win64.zip", $dst_file = "C:\Programdata") {
          Expand-Archive -Path $src_file -DestinationPath $dst_file 
          if (! $?) { throw "$src_file から $dst_file への展開エラー、確認してください" }
      }
      function Install-Ssh() {
          powershell.exe -ExecutionPolicy Bypass -File C:\Programdata\OpenSSH-Win64\install-sshd.ps1
          if (! $?) {
              throw "openssh のインストールエラー、確認してください"
          }
          Start-Service sshd
          Set-Service -Name "sshd" -StartupType Automatic; Start-Service sshd
          if (! $?) {
              throw "sshd の自動起動設定または sshd の起動エラー、確認してください"
          }
      }
      Check-Env
      Download-File
      Unzip-File
      Install-Ssh
    • パラメータを使用: このオプションを有効にします。次に、コマンド内の {{sshd_download_url}} パラメーターに値を指定する必要があります。OpenSSH 公式サイトから、目的の OpenSSH バージョンのダウンロード URL を取得します。例: https://github.com/PowerShell/Win32-OpenSSH/releases/download/v9.5.0.0p1-Beta/OpenSSH-Win64.zip

    実行計画

    [すぐに実行] をクリックします。

    コマンド名

    コマンドの名前を入力します。

    コマンドの説明

    コマンドの説明を入力します。コマンドの目的など、わかりやすい説明を入力すると、将来のメンテナンスに役立ちます。

    実行ユーザー

    ECS インスタンスでコマンドを実行するユーザーを指定します。

    セキュリティのベストプラクティスとして、クラウドアシスタントのコマンドは、必要最小限の権限を持つ一般ユーザーとして実行することを推奨します。詳細については、「クラウドアシスタントのコマンドを一般ユーザーとして実行」をご参照ください。

    説明

    デフォルトでは、クラウドアシスタントは Linux インスタンスでは root ユーザーとして、Windows インスタンスでは System ユーザーとしてコマンドを実行します。

    実行パス

    Windows の場合、デフォルトのパスはクラウドアシスタントエージェントのプロセスディレクトリです: C:\ProgramData\aliyun\assist\$(version)

    タイムアウト

    インスタンスでのコマンドのタイムアウトを設定します。コマンドの実行がタイムアウトした場合、クラウドアシスタントはコマンドプロセスを強制的に終了させます。

    単位:秒。デフォルト値は 60 です。300 を推奨します。ネットワークの状況に応じて値を調整できます。

    インスタンスの選択

    コマンドのターゲットインスタンスを選択します。

    マネージドインスタンスの選択

    コマンドのターゲットホストインスタンスを選択します。

    説明

    ホストインスタンスは、クラウドアシスタントによって管理される Alibaba Cloud 以外のサーバーです。詳細については、「Alibaba Cloud マネージドインスタンス」をご参照ください。

  5. 実行して保存 をクリックし、コマンドが正常に実行されたことを確認します。

    実行ステータス成功終了コード0、出力に sshd and ssh-agent services successfully installed が含まれていれば、OpenSSH のインストールは成功です。

  6. OpenSSH のインストールを検証します。

    1. VNC を使用して Windows インスタンスに接続します。

      詳細については、「VNC を使用したインスタンスへの接続」をご参照ください。

    2. Dingtalk_20210510142550.jpg > [Windows PowerShell] をクリックして、[Windows PowerShell] ターミナルを開きます。

    3. 次のコマンドを実行して、ネットワークステータスを確認します:

      NETSTAT.EXE -ano

      ポート 22 が LISTENING 状態のエントリが表示されれば、サービスは正常に実行されています。

      PS C:\Users\Administrator> NETSTAT.EXE -ano
      Active Connections
        Proto  Local Address          Foreign Address        State           PID
        TCP    0.0.0.0:22             0.0.0.0:0              LISTENING       2880
        TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       892
        TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4
        TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING       136
        TCP    0.0.0.0:47001          0.0.0.0:0              LISTENING       4
        TCP    0.0.0.0:49664          0.0.0.0:0              LISTENING       580
        TCP    0.0.0.0:49665          0.0.0.0:0              LISTENING       524
        TCP    0.0.0.0:49666          0.0.0.0:0              LISTENING       1116
        TCP    0.0.0.0:49667          0.0.0.0:0              LISTENING       1908
        TCP    0.0.0.0:49668          0.0.0.0:0              LISTENING       1824
  7. SSH クライアントを使用して Windows インスタンスにリモート接続できることを確認します。

    説明

    Windows インスタンスの現在のユーザー名とパスワードを使用してログインします。