Visual Studio Code

Visual Studio Code で XSERVER に SSH 接続する

XSERVER で Python を使ってみようと思い、まずは Visual Studio Code で SSH 接続を設定してみます。

XSERVER の準備

まずは、XSERVER のサーバーパネルで SSH 設定を開き、状態を ON にします。次に、公開鍵認証用鍵ペアの生成でパスフレーズを入力して、秘密鍵ファイルをダウンロードします。

ダウンロードした秘密鍵ファイルをホームディレクトリー内の .ssh フォルダーに移動して、パーミッションを 0600 に変更します。

$ mv [サーバー ID].key ~/.ssh/$ chmod 0600 ~/.ssh/[サーバー ID].key

Visual Studio Code の設定

Visual Studio Code の拡張機能に Remote – SSH をインストールします。

~/.ssh/config ファイルを開き次のように入力します。

Host [接続名]
    HostName [サーバー ID].xsrv.jp
    User [サーバー ID]
    Port 10022
    IdentityFile /Users/xxx/.ssh/[サーバー ID].key
    IdentitiesOnly yes
    AddKeysToAgent yes
    UseKeychain yes
  • Host は接続名なので任意の名前にします。
  • HostName はサーバー ID に続けて .xsrv.jp にします。
  • User は XSERVER のサーバー ID にします。
  • IdentityFile は XSERVER からダウンロードした秘密鍵ファイルの絶対パスにします。
  • macOS の場合、AddKeysToAgent, UseKeychain を yes にすることでパスフレーズがキーチェーンに保存されます。

SSH 接続

ウィンドウ左下の >< をクリックして Connect to Host… を選択すると、設定一覧が表示されるので、設定した接続名を選択すると SSH 接続が開始されます。

接続エラー

Visual Studio のバージョンが 1.86 以降の場合はサーバーで次のエラーが発生し、接続できなくなります。

Warning: Missing GLIBCXX >= 3.4.25! from /usr/lib64/libstdc++.so.6.0.19
Warning: Missing GLIBC >= 2.28! from /usr/lib64/libc-2.17.so
Error: Missing required dependencies. Please refer to our FAQ https://aka.ms/vscode-remote/faq/old-linux for additional information.

また、ローカルでは次のエラーが表示されます。

The remote host may not meet VS Code Server's prerequisites for glibc and libstdc++

その場合はバージョン 1.85 にダウングレードする必要があります。

ダウングレード後は自動更新をしないようにするため、設定で Update の Mode を none に変更します。