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

Platform For AI:リモート接続: ProxyClient

最終更新日:Nov 06, 2025

VSCode やターミナルなどのローカルツールから Data Science Workshop (DSW) インスタンスにリモート接続して機械学習開発を行うには、DSW が提供する ProxyClient ツールを使用します。このツールを使用すると、Virtual Private Cloud (VPC) や NAT Gateway を構成することなく、SSH 経由で DSW インスタンスに接続できます。

手順

ステップ 1: DSW ProxyClient のダウンロードとインストール

  1. DSW ProxyClient ツールをダウンロードし、ユーザーのホームディレクトリに保存します。

    必要なディレクトリは、オペレーティングシステムによって異なります:

    • Windows: C:\Users\<username> などのユーザープロファイルフォルダーに保存します。

    • Linux: root ユーザーの場合は /root に、一般ユーザーの場合は /home/<username> に保存します。

    • macOS: /Users/<username> に保存します。

    <username> を実際のユーザー名に置き換えてください。

    各バージョンのダウンロードリンクは以下のとおりです:

  2. コマンドラインで、クライアントファイルを実行可能にします。このステップは Windows では不要です。

    chmod 755 <proxyclient>

    <proxyclient> をダウンロードしたクライアントファイルの名前に置き換えてください。

  3. 構成ファイルを生成します。

    1. 構成コマンドを実行します。

      # macOS, Linux
      ./proxyclient config
      # Windows
       proxyclient.exe config
      重要

      macOS で初めて ./proxyclient コマンドを実行すると、「"proxyclient" は開発元を確認できないため開けません。」というエラーメッセージが表示されることがあります。これを解決するには、[システム環境設定] > [セキュリティとプライバシー] に移動し、アプリケーションの実行を許可します。

    2. プロンプトに従って、構成ファイルのパスを設定します。

      構成ファイルの名前を入力します。パスを含めることもできます。

      説明
      • Enter キーを押して、デフォルトのパスとファイル名である ~/.proxyclientconfig を使用することをお勧めします。

      • カスタムパスとファイル名を指定することもできます。たとえば、Windows (x86-64) の場合: C:/Users/<username>/xxx/.proxyclientconfig

      • カスタムパスを設定した場合は、ステップ 3 で ./proxyclient add コマンドを実行するときに -c または --config-file フラグを使用して指定する必要があります。

    3. プロンプトに従って、RegionId、AccessKey ID、AccessKey Secret、および STS Token パラメーターを設定します。

      次の表に、これらのパラメーターを示します。

      パラメーター

      説明

      RegionId

      リージョンの ID です。たとえば、中国 (上海) の場合は cn-shanghai です。リージョン ID の完全なリストについては、「リージョンとゾーン」をご参照ください。

      重要

      ここで構成するリージョン ID は、DSW インスタンスのリージョンと一致している必要があります。

      AccessKey ID

      アカウントの AccessKey を入力します。Alibaba Cloud アカウントの AccessKey ID と AccessKey Secret を取得する方法については、「AccessKey ペアの作成」をご参照ください。

      AccessKey Secret

      STSToken

      • Alibaba Cloud アカウントまたは RAM ユーザーを使用している場合は、これを空のままにします。

      • RAM ロールとしてログインする場合は、一時的な ID 認証情報 (STS トークン) を提供する必要があります。セキュリティトークンサービス (STS) トークンを生成する方法については、「STS トークンの取得」をご参照ください。

      重要

      STS トークンの有効期限が切れていないことを確認してください。

ステップ 2: SSH 認証方式の設定

SSH キーペアまたはユーザー名とパスワードのいずれかを使用して、DSW インスタンスに接続できます。

重要

専用リソースグループ内の DSW インスタンスの場合、認証を設定した後、インスタンスの [アクション] 列にある [イメージの保存] をクリックします。これにより、公開鍵またはパスワードがインスタンスイメージに永続化され、再起動後も有効なままになります。

方法 1: パスワードなしのログオンを設定する (推奨)

  1. キーペアを生成します。

    1. ローカルのコマンドラインで、次のコマンドを実行してパスワードなしのログイン用のキーペアを生成します。デフォルトでは、このコマンドは RSA キーペアを作成します。

      ssh-keygen
    2. キーペアを保存するファイルを指定します。

      • (推奨) ファイル名を指定せずに Enter キーを押します。デフォルトのキーペアファイルは ~/.ssh/id_rsa (秘密鍵) と ~/.ssh/id_rsa.pub (公開鍵) です。

      • (オプション) example_id_rsa など、キーペアのカスタムファイル名を指定します。

        説明

        カスタムファイル名を指定した場合は、ステップ 3: DSW インスタンスプロキシの追加で生成する ~/.ssh/config ファイルで IdentityFile ディレクティブを使用して秘密鍵ファイルのパスを宣言する必要があります。

    3. プロンプトに従ってパスフレーズを設定し、ローカルに保存します。後で DSW インスタンスに接続する際に、このパスフレーズを使用します。

  2. 接続先の DSW インスタンスでターミナルを開き、次のコマンドを実行します。setup_ssh.sh ツールが自動的に SSH サーバーをダウンロードしてインストールします。

    wget https://dsw-resource.oss-cn-beijing.aliyuncs.com/tools/setup_ssh.sh
    bash setup_ssh.sh
  3. プロンプトに従って SSH 公開鍵を設定し、SSH サーバーを起動します。

方法 2: ユーザー名とパスワードによるログインを設定する

  1. 接続先の DSW インスタンスでターミナルを開きます。

  2. 次のコマンドを実行して、root ユーザーのパスワードを設定します。

    passwd root
  3. SSH 構成ファイルを変更して、root ユーザーがパスワードを使用してログインできるようにします。

    1. SSH 構成ファイルを開きます。

      vi /etc/ssh/sshd_config
    2. #PermitRootLogin prohibit-passwordPermitRootLogin yes に変更してファイルを保存します。

      image

  4. SSH サーバーサービスを再起動して変更を適用します。

    service ssh stop
    service ssh start

ステップ 3: DSW インスタンスプロキシの追加

  1. [インスタンス] ページで、接続するインスタンスを見つけ、次の図に示すようにインスタンス ID をコピーします。

    e08dad9ce3e2dc97cbebdea95b9cea14

  2. ローカルのコマンドラインで、次のコマンドを実行して DSW インスタンスを SSH ターゲットホストとして追加します。

    前のステップでコピーしたインスタンス ID で <instance ID> を置き換えます。

    # macOS, Linux:
    ./proxyclient add -i=<instance ID>
    # Windows:
    proxyclient.exe add -i=<instance ID>
  3. .ssh/config ファイルの内容を表示して、プロキシ設定が適用されていることを確認します。

    # macOS, Linux
    cat .ssh/config
    
    # Windows。ローカルのコマンドラインで、ユーザーのホームディレクトリに移動し、次のコマンドを使用して設定ファイルの内容を表示します。設定ファイルをダブルクリックして開くこともできます。
    explorer .ssh\config
  4. オプション: example_id_rsa など、キーペアにカスタムファイル名を使用した場合は、~/.ssh/config ファイルを変更する必要があります。次の例に示すように、IdentityFile ディレクティブを使用して秘密鍵ファイルへのパスを指定します。

    Host dsw-b7a2765b267e****
        HostName dsw-b7a2765b267e****
        User root
        ProxyCommand ~/proxyclient connect --region-id=cn-hangzhou --instance-id=dsw-b7a2765b267e**** --config-file=***
        ServerAliveInterval 30
        IdentityFile ~/.ssh/example_id_rsa

ステップ 4: DSW インスタンスへのリモート接続

ターミナルを使用して接続する

ターミナルツール (ローカルのコマンドラインなど) を開き、次のコマンドを実行してリモートインスタンスにログインします。

<instance ID> を DSW インスタンスの ID に置き換えます。

ssh <instance ID>

scp コマンドを使用して、ローカルマシンとリモートインスタンス間でファイルやディレクトリをコピーすることもできます。

# ローカルファイルをリモートインスタンスにコピーします。
scp local_file_path root@<DSW instance ID>:<remote_file_path>
# ローカルディレクトリをリモートインスタンスにコピーします。
scp -r local_dir root@<DSW instance ID>:<remote_dir>
# リモートインスタンスからローカルマシンにファイルをコピーします。
scp root@<DSW instance ID>:<remote_file_path> <local_file_path>
# リモートインスタンスからローカルマシンにディレクトリをコピーします。
scp -r root@<DSW instance ID>:<remote_dir> <local_dir>

VSCode を使用して接続する

手順は VSCode のバージョンによって異なる場合があります。詳細については、「Visual Studio Code」をご参照ください。

  1. ローカルマシンで VSCode を開き、次の図に示すように [Remote-SSH] 拡張機能をインストールします。

    SSH

  2. VSCode の左側のナビゲーションウィンドウで、Remote explorer をクリックします。

    SSH Targets

  3. インスタンスへのリモート接続を追加します。

    1. [SSH] の横の Add アイコンをクリックします。表示されるテキストボックスに DSW インスタンス ID を入力し、[Enter] を押します。

      Remote

    2. クリックして更新する設定ファイルを選択します。

      配置文件

    3. VSCode の右下隅に表示される [Host Added] ダイアログで、[Connect] をクリックします。

      Connect

    4. [Linux] をクリックして、DSW インスタンスのオペレーティングプラットフォームを選択します。

      操作平台

    5. テキストボックスに、ステップ 2 で作成したパスフレーズを入力して Enter キーを押します。

      passphrase

      VSCode がようこそページを開くと、接続は成功です。これで、VSCode でリモートフォルダを開いて開発を開始できます。VS Code

  4. この DSW インスタンスへのその後の接続では、ターゲットインスタンスを右クリックし、接続方法を選択して、プロンプトに従います。

    连接方式

よくある質問

Q: DSW インスタンスへの「Direct SSH」経由の接続と「ProxyClient」メソッドの違いは何ですか?

方法 A: Direct SSH 接続 (推奨)

方法 B: ProxyClient プロキシ

機能

VPC や NAT Gateway などのネットワークコンポーネントが必要です。より高速で安定した接続を提供します。

追加のネットワークコンポーネントは不要です。接続が遅くなったり、不安定になったりする場合があります。

サポートされるインスタンス

  • パブリックリソースグループで作成された従量課金制の DSW インスタンス。リソース仕様は ecs.ebm で始めることはできません。

  • Lingjun Intelligent Computing リソースを使用する DSW インスタンス。

すべてのインスタンスタイプ。

認証方法

SSH キーを使用したワンステップ認証。

  1. まず、Alibaba Cloud AccessKey とその他の情報を使用して ProxyClient で認証する必要があります。

  2. 次に、SSH 公開鍵または秘密鍵を使用して認証する必要があります。

アクセスパス

  • パブリックインターネットアクセス (NAT Gateway と EIP が必要です)。

  • VPC 内の内部ネットワークアクセス。

パブリックインターネットアクセスのみ。

構成方法

リモート接続: Direct SSH

リモート接続: ProxyClient

仕組み

PAI は NAT Gateway 上に DNAT ルールを自動的に作成し、パブリック SSH リクエストを DSW インスタンスに転送します。

すべてのトラフィックは PAI プロキシサーバーを介してリレーされます。

課金に関する注意

NAT Gateway と EIP は、DSW インスタンスが停止していても、存在する限り料金が発生します。不要になった場合は削除してください。

この方法では追加費用は発生しません。

Q: RAM ユーザーの AccessKey を使用すると、DSW インスタンスへの ProxyClient 接続が失敗するのはなぜですか?

RAM ユーザーの AccessKey を使用して ProxyClient 経由で接続する場合、Alibaba Cloud アカウントが RAM ユーザーに paidsw:GetToken 権限を付与していることを確認する必要があります。そうでない場合、認証は失敗します。権限を追加するには、次のステップを実行します:

権限付与の手順

  1. Alibaba Cloud アカウントを使用して Resource Access Management (RAM) コンソールにログインします。

  2. 次のアクセスポリシーを作成します:

    {
       "Version": "1",
       "Statement": [
         {
           "Effect": "Allow",
           "Action": "paidsw:GetToken",
           "Resource": "*"
         }
       ]
    }
  3. RAM 権限付与ページで、前のステップで作成したポリシーを対応する RAM ユーザーに付与します。

Q: ProxyClient で DSW インスタンスに接続する際の「接続タイムアウト」エラーを修正するにはどうすればよいですか?

接続タイムアウトエラーは、多くの場合、ProxyClient 構成ファイルの RegionId と DSW インスタンスの実際のリージョンとの不一致が原因です。これを解決するには、構成ファイル (デフォルトは ~/.proxyclientconfig) を開き、RegionId の値が DSW インスタンスが配置されているリージョン (例: cn-shanghai) と完全に一致することを確認します。

Q: DSW インスタンスに複数のユーザーを作成して、個別の SSH ログインを行う方法はありますか?

いいえ、DSW は分離された SSH ログインのための複数ユーザーの作成をネイティブにサポートしていません。デフォルトでは、DSW インスタンスは SSH アクセス用に root ユーザーのみを提供します。インスタンスのオペレーティングシステム内で手動で新しいユーザーを作成しようとすることはできますが、これは公式にサポートまたは推奨されている構成ではありません。

Q: VSCode から SSH 経由で DSW インスタンスに接続した後、/mnt/workspace 内のプロジェクトファイルにアクセスするにはどうすればよいですか?

プロジェクトファイルは /mnt/workspace にありますが、これは SSH 経由で最初に接続したときのデフォルトディレクトリ (/root) ではありません。IDE からこのフォルダを手動で開く必要があります。

VSCode でこれを行うには:

  1. DSW インスタンスに接続した後、[ファイル] > [フォルダーを開く...] に移動します。

  2. 表示されるダイアログボックスで、/mnt/workspace と入力し、[OK] をクリックします。

  3. プロジェクトファイルが VSCode Explorer のサイドバーに表示されます。

参考資料

  • ProxyClient ツールは、頻繁な再接続や低速などの問題を引き起こす可能性があります。そのため、リモート接続: Direct SSH メソッドを使用することをお勧めします。