PHPなどでサーバープログラムを開発する場合、ローカルで開発をしてFTPなどでアップロードしていると作業が煩雑になり、どれをアップロードしたものか?わからなくなることが多いため、我慢できずにSSHでCursorをXserverに直接つないで開発することに挑戦をしたときのメモです。
CursorはVSCodeで動いているため、VSCode単体ででも、この方法を参考に使えると思います。
CursorにSSHをインストールする
とりあえず何はともあれCursorがSSHにつながるための拡張機能をインストールします。
Cursorの拡張機能追加から下記をあらかじめインストールしておきます。
Xserverから鍵ファイルをダウンロードしておく
サーバーパネルに接続し、SSHをクリックし、下記の画面から公開鍵認証用鍵ペアの生成タブでパスフレーズを設定し.keyファイルをローカルにダウンロードします。
keyファイルをローカルパソコンに置いておく
とりあえず、Windowsで進めていますので、ローカルパソコンのユーザの下に .sshというフォルダーを新規に作って、そこに ダウンロードした .key ファイルを置きました。
c:\Users\ユーザー名\.ssh\キーファイル名.key
OpenSSHをWindowsにインストールする
これが結構厄介でした。
結局下記の方法が一番確実でした
1.Gitからダウンロードします https://github.com/PowerShell/Win32-OpenSSH/releases
OpenSSH-Win64-v9.8.3.0.msi をダウンロードしました。
ダウンロード後はこのファイルをダブルクリックしてSSHをインストール。
SSHが正しく動くかCMDでテスト
インストールしたOpenSSHが動くかどうかテストしてみます、
- where ssh で正しくインストール先が表示されるか?
- ssh -Vでバージョンが表示されるかどうか?
SSHでXserverと接続できるかをテスト
- コマンドラインで
C:\Users\ユーザー名>ssh -i C:\Users\ユーザー名\.ssh\キーファイル名.key -p 10022 Xserverユーザー名@sv******.xserver.jp - The authenticity of host ‘[sv*******.xserver.jp]:10022 ([***.***.***.***]:10022)’ can’t be established…….
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
と返ってくるので、SSHの初回接続時に出るメッセージは「このサーバーの公開鍵をまだあなたのPCが知らないけど、信頼して登録しますか?」という確認ですのでyesで答える - ssh -i C:\Users\ユーザー名\.ssh\キーファイル名.key -p 10022 Xserverユーザー名@sv*******.xserver.jpと入力すると
Enter passphrase for key ‘C:\Users\ユーザー名\.ssh\キーファイル名.key’:
と返ってくるのでキーを作ったときのパスフレーズを入力すると
Last login: Sun Sep 28 14:54:08 2025 from ***.***.***.***
[ユーザー名@sv****** ~]$
と接続できる。
configファイルで接続する
ここまでできたのでいよいよ本格的な接続に入ります。
keyファイルがある .sshフォルダーに config というファイルを作り以下を記述し保存します
Host xserver
HostName sv*******.xserver.jp
User サーバーID
Port 10022
IdentityFile C:/Users/<あなた>/.ssh/キーファイル名.key
IdentitiesOnly yes
ServerAliveInterval 60
一度このファイルで接続できるWindowsのコマンドで確認しておきましょう
ssh xserver とコマンドラインで入力し正しく接続できればOKです。
Cursorでの接続
いよいよCursorで直接接続してみます。
- Cursorを起動します
Ctrl + Shift + P
を押して コマンドパレット を出しますssh
と打ちますRemote-SSH: Connect to Host...
をさがして選択します- xserverがでるのでそれをクリック
- パスフレーズを入力しろと言ってくるのでキーファイルのパスフレーズを入力します
- OSを選択するメッセージですので、Linuxを選びます
- サーバと接続できるとあとは編集したいフォルダーを探して決めるだけです。
感想
いろいろな実験をしてみました。
Gitを介して接続する方法や、ローカルフォルダーを介して接続する方法…
私の性格からして、この直接接続して使う方法はかなり快適です。
つねにサーバと1:1で接続されているので、なんとなくむずがゆいところはありますが、変更即反映されるので実に快適です。
個人の好みによるのでお勧めするかどうかは控えておきますが、とにかく効率はぐっとあがりました。
コメント