VSCodeの「Remote – SSH」プラグインの現在のプレリリース版に、いつの間にかSSHの「RemoteCommandを有効にするオプション」が追加さていましたね。
早速rootログイン禁止の環境で試してみたら、rootでログインができてサーバのファイルを直接VSCodeで編集できる様になったので、今回はその方法を記事にします!
前提条件
- SSHログイン用のユーザーでしかログインできない
- SSHログイン用ユーザーはパスワード無しsudoでrootへの昇格が可能
ちなみに私の環境はMacで標準で付いているSSHクライアントを使用しています。
設定方法
1. ローカル環境のSSH設定
ユーザーの「.ssh/config」を開き以下の設定を入れます(configが無い場合は作成してください)
Host testhost HostName xx.xx.xx.xx User testuser port 22 IdentityFile /users/user/.ssh/id_rsa RemoteCommand sudo su - RequestTTY true
- Host
- 接続する際のホスト名(任意の名前)
- HostName
- 接続するサーバの情報(IPアドレスやドメイン・ホスト名など)
- User
- 接続ユーザー名
- port
- sshの接続ポート
- RemoteCommand
- rootに昇格するコマンド(「sudo su -」のままでOK)
- RequestTTY
- trueのままでOK
上記設定が済んだらsshでサーバに接続してrootユーザーになっている事を確認してください
$ ssh testhost 最終ログイン: 2022/XX/XX (X) XX:XX:XX JST [root@XX.XX.XX.XX ~]#
この用にユーザーがrootであればOKです。
Remote – SSHプレリリース版のインストール
1. VSCodeを立ち上げて「拡張機能」の検索窓から「Remote – SSH」を検索してインストールしてください。
2. インストールが完了したらインストール済みの拡張機能一覧に「Remote – SSH」が表示されますので、右クリックメニューから「プレリリースバージョンへの切り替え」をクリックします。
3. プレリリースバージョンがインストールされるので、インストールされたら右クリックメニューから「拡張機能の設定」をクリックします
4.以下の通り「Remote.SSH: Enable Remote Command」と言う項目があるのでチェックを入れます
5. これで設定は完了なので一度VSCodeを再起動します。
使い方
1. 再起動完了後にRemote SSHのメニューを表示させると、先ほどSSHのconfigファイルで設定した接続先が表示されているので、右クリックメニューで「Connect to Host ~」をクリックします
2. 接続が完了し作業の開始ウィンドウが表示されるのでエクスプローラー画面を表示します
3. 「フォルダーを開く」と言うボタンが表示されているのでクリックすると上部にディレクトリパスを入力するテキストボックスが出てくるので任意のディレクトリを入力します
4. 該当のディレクトリのファイル一覧が表示されます
5. ファイルを選択するとVSCode上で編集が可能となります
かなりざっくりとした説明でしたが、以上となります。
コメント