開発ツール・環境構築

VSCode × VPS リモート接続手順まとめ【SSH設定対応】

VPSを契約したのはいいけれど、どうやって中身を編集すればいいのか分からない──そんな疑問を持っていませんか? このページでは、VSCode(Visual Studio Code)からVPSへリモート接続する方法を、初心者にもわかるように丁寧に解説します。

SSH接続に必要な設定や鍵の扱い、VSCode側の操作手順など、つまずきやすいポイントをすべて網羅。 「とにかくつなげたい」「VPSのファイルをローカルのように編集したい」という方に向けて、最短ルートで接続できる実用記事として構成しています。

※この記事は、AIやPythonといった用途に限らず、VPSを操作したいすべての人が対象です。

VSCodeでVPSに接続するメリットとは?

VPSを使い始めたばかりの方が最初に悩むのが、「どうやってファイルを編集するか」です。 ターミナルでの操作に慣れていない場合や、GUIで編集したいという人にとって、Visual Studio Code(VSCode)のリモート接続は非常に有効な手段です。 ここでは、なぜVSCodeを使うのか、その理由を明確にしておきましょう。

なぜターミナルやSFTPではなく、VSCodeなのか

ターミナルだけで作業を進めるのは、慣れていないと非常に負担が大きいです。 一方、SFTPクライアントは単なるファイル転送には向いていますが、「サーバー上のファイルをその場で編集して確認する」という用途には不向きです。

VSCodeを使えば、まるでローカルのフォルダを開くように、VPS上のファイルをGUIで編集できます。 エディタの補完機能や構文ハイライト、検索・置換、Git連携など、すべての機能をリモート先でもそのまま活用できます。

他の手段と比べたときの違いと利点

ここでは、VSCodeとその他の手段を比較して、具体的にどこが優れているのかを整理します。 作業効率の違いはもちろん、設定やトラブル時の対応しやすさでも差が出ます。

接続手段特徴向いているケース
ターミナル(SSH)直接コマンド操作。編集はvi/nanoなど慣れた人、設定変更・ログ確認が主目的
SFTPクライアントファイルの送受信が中心。編集には別エディタが必要ローカルで編集してアップロードする用途
VSCode Remote-SSHVPS内をそのまま操作できるGUIエディタ。保存と実行が直結開発・検証・構成ファイル編集など幅広く対応

つまり、VSCodeを使えば「VPSを触るハードル」が一気に下がります。 特に、WebアプリやBot開発などで複数のファイルを扱う場合、VSCodeの柔軟性は圧倒的です。

🖥️ VSCodeでVPSにリモート接続する(Remote-SSH設定)

VPS上でPythonスクリプトを直接編集・実行するには、開発環境としてVSCodeのRemote-SSH機能を使うのが便利です。ここでは、VSCodeからConoHa VPSへSSH接続する設定手順を解説します。Flask構築まで完了していれば、ここからVSCodeエディタで快適に編集でき流ようになります。

VSCodeのインストールや初期設定がまだの方は、先にこちらの記事をご覧ください。 詳しい導入手順や日本語化の方法を、Windows / Mac 両対応で解説しています。

👉 【Windows / Mac対応】VSCodeのインストールと日本語化・初期設定方法

拡張機能「Remote - SSH」をインストールする

まず、VSCodeを開いて、拡張機能マーケットプレイスから「Remote - SSH」を検索し、インストールしてください。

SSH設定ファイルを開く

VSCodeのコマンドパレット( Ctrl+Shift+P または Cmd+Shift+P)で「Remote-SSH: Open SSH Configuration File」を選択します。

表示された一覧から ~/.ssh/config を選んで開きます。

VPSの接続情報を記述する

configファイルに、以下のようにVPSの情報を追記してください。

VSCodeでVPSへ接続するためには、秘密鍵(.pem ファイル)や接続先の情報を、~/.ssh/config に記述する必要があります。以下の設定例に沿って、各項目を自分の環境に合わせて書き換えてください。                                                                                                                                                                    

設定項目値の例説明
Hostconoha-vps任意の接続名。VSCodeやターミナルから ssh conoha-vps として使える
HostName160.251.xxx.xxxVPSのグローバルIPアドレスを指定
UserbeproVPSに作成した一般ユーザー名
IdentityFile ~/.ssh/dev01.pem秘密鍵(pemファイル)のフルパス。
場所を移動した場合はその都度ここも修正
IdentitiesOnlyyes指定した鍵以外を無視させる設定(セキュリティのためON推奨)

Host conoha-vps
    HostName xxx.xxx.xxx.xxx
    User bepro
    IdentityFile ~/.ssh/dev01.pem
    IdentitiesOnly yes

秘密鍵のパーミッションは600に設定してください。

リモート接続を開始する

再びコマンドパレットで「Remote-SSH: Connect to Host」を選び、先ほど設定した conoha-vpsをクリックします。

「Remote-SSH: Connect to Host」を選択
conoha-vpsをクリック

問題がなければ、VSCodeがVPSに接続され、リモートエクスプローラーが表示されます。

自分専用の構築環境ができました。

うまく接続できないときの対処法

VSCodeからVPSへリモート接続する際、設定は正しく見えるのにうまくいかない……。そんなトラブルは非常によくあります。 このセクションでは、初心者がつまずきやすい典型的なエラーとその対処法をケース別に整理して紹介します。

Permission denied(公開鍵認証エラー)

接続時に以下のようなエラーが表示された場合、SSHの鍵認証に失敗している可能性が高いです。

エラー例

Permission denied (publickey)

よくある原因は以下の通りです:

  • configファイルで指定した IdentityFile のパスが間違っている
  • 鍵ファイルのパーミッションが緩すぎる(例:644など)
  • 秘密鍵が対応していない形式(.ppk をそのまま使おうとしているなど)

対処方法の一例:

chmod 600 ~/.ssh/your-key.pem

また、鍵ファイルが `~/.ssh` 以外にある場合は、configファイルで絶対パスで指定するようにしましょう。

Host not found(ホスト名の間違い)

接続先のIPアドレスやホスト名が誤っていると、以下のようなエラーが表示されます。

エラー例

Could not resolve hostname my-vps: Name or service not known

原因として考えられるのは以下の通りです:

  • configファイルで定義した Host 名に誤字がある
  • HostName に指定したIPアドレスが間違っている
  • DNSで名前解決できない名前を使っている

対処としては、まず HostName をVPSの「グローバルIPアドレス」で指定しているか確認してください。 また、`ping IPアドレス` や `ssh IPアドレス` でOSレベルから接続可能かをチェックしておくと、問題の切り分けがしやすくなります。

拡張子や改行コードの意外な落とし穴

configファイルや鍵ファイルの編集時、**拡張子**や**改行コード**の誤りが原因で接続に失敗するケースもあります。

具体的な落とし穴:

  • 拡張子が `.pem.txt` になっている(Windowsメモ帳で作成)
  • configファイルが `config.txt` になっている
  • 改行コードが CRLF(Windows形式)になっており、UNIX形式でない

改行コードの確認と変換(VSCode上)

VSCode右下の「CRLF」や「LF」と表示されている箇所をクリックすると、改行コードの変換が可能です。 configファイルやスクリプトは「LF(UNIX形式)」で保存してください。

また、拡張子の表示がされていない場合は、エクスプローラーの「表示」設定で「拡張子を表示」にチェックを入れることで確認できます。

接続できたら何ができる?活用TIPS集

VSCodeからVPSへのリモート接続に成功したら、ただファイルを開いて終わりではもったいないです。 実際に編集や操作を行う中で、VSCodeの便利機能をうまく活用することで作業効率が一気に上がります。 このセクションでは、実務で役立つ実用的なTIPSを紹介します。

VPS上でそのままファイル編集&保存

リモート接続が完了すれば、VPS内のディレクトリがローカルのように表示され、 エディタで直接ファイルを編集・保存できるようになります。

例えば、以下のように設定ファイルを開いて編集可能です:

/etc/nginx/nginx.conf
/home/ubuntu/app/.env
~/project/settings.py

変更を保存すれば、VPS上に即座に反映されます。別途アップロードする必要はありません。

ターミナルとの連携でコマンドも楽々

VSCodeの画面下部またはメニューから「ターミナル」を起動すれば、VPS上で直接コマンドを実行できます。 これにより、ファイル編集 → `systemctl restart` のような再起動操作まで一括で対応可能です。

ターミナル起動のショートカット

Ctrl + Shift + @ (Macの場合は Control + ` )

複数のターミナルを分けて起動することもできるため、作業用途ごとに使い分けると便利です。

workspace設定で複数接続を効率化

複数のVPSを管理する場合や、作業ごとに接続設定を分けたい場合には、VSCodeの .code-workspace を使うと効率的です。 設定を保存しておけば、次回からワンクリックで目的のVPSに接続できます。

.code-workspace ファイルの一例

{
    "folders": [
        { "name": "My VPS", "uri": "vscode-remote://ssh-remote+my-vps/home/ubuntu/app" }
    ],
    "settings": {}
}

上記のファイルを任意の場所に保存し、「ワークスペースとして開く」から選択することで即座に接続&作業が可能になります。

複数案件や複数サーバーの管理が必要な人にとって、接続効率を劇的に高めるテクニックです。

SSH鍵ファイルのセキュリティに注意

VSCodeからVPSに接続する際に使うSSH鍵(.pemファイルなど)は、サーバーの玄関鍵に相当します。 万が一このファイルが漏れた場合、不正アクセスのリスクが非常に高くなります。 このセクションでは、最低限知っておくべきSSH鍵ファイルの取り扱い注意点を整理します。

.pemファイルの管理場所と権限設定

鍵ファイルは ~/.ssh/ フォルダ内に保存し、権限を「所有者のみ読み取り可(600)」に設定するのが基本です。 パーミッションが緩い場合、接続時に警告が出たり、SSH自体が接続を拒否します。

推奨されるパーミッション設定

chmod 600 ~/.ssh/my-key.pem

また、Windowsで保存した場合に .pem.txt などの拡張子が自動で付くことがあります。 その場合は拡張子を `.pem` に修正し、改行コードもLF(UNIX形式)に統一しておくと接続トラブルを防げます。

安全な持ち歩き方と代替案

ノートPCで開発する場合、鍵ファイルを持ち歩く必要がありますが、USBメモリやクラウドストレージに入れて持ち歩くのは避けましょう。 盗難・紛失のリスクが非常に高く、SSH鍵は再発行にも手間がかかります。

安全性を高める選択肢

  • Mac/Linuxなら ssh-agent に一時登録しておく(再入力不要)
  • Windowsでも PageantOpenSSH Authentication Agent を使ってパスワード保護付きで管理
  • 企業レベルなら YubiKey やハードウェアトークンによる物理鍵認証も検討

「鍵ファイルの扱いに無頓着な人ほど、サーバーの脆弱性になる」──それくらい慎重であるべきポイントです。 最低限の対策として「場所」「権限」「形式」を意識して運用してください。

よく読まれている記事

1

IT入門シリーズ 🟢 STEP 1: ITの基礎を知る(ITとは何か?) 📌 IT初心者が最初に学ぶべき基本知識。ITの概念、ネットワーク、OS、クラウドの仕組みを学ぶ ...

2

「私たちが日々利用しているスマートフォンやインターネット、そしてスーパーコンピュータやクラウドサービス――これらの多くがLinuxの力で動いていることをご存じですか?無料で使えるだけでなく、高い柔軟性 ...

3

この記事は、Linuxについて勉強している初心者の方向けに「Shellスクリプト」について解説します。最後まで読んで頂けましたら、Shellスクリプトはどのような役割を担っているのか?を理解出来るよう ...

-開発ツール・環境構築