Настройка подключения при помощи VS Code

Visual Studio Code – редактор исходного кода, имеющий широкие возможности для кастомизации. В том числе редактор поддерживает установку готовых расширений для удаленной разработки. Например, расширение Remote SSH позволяет получить удаленный доступ к серверу с помощью протокола SSH. В этой статье мы расскажем, как запустить VS Code, включив возможность использовать SSH, а также разберем, как открыть VS Code и правильно всё настроить.

Мы разработали видеоинструкцию, где в удобном формате объяснили все этапы подключения при помощи VS Code

Смотреть видеоинструкцию

Включение SSH

Для удаленного подключения через VS Code необходимо включить возможность использовать SSH (подробнее о данном протоколе здесь). По умолчанию на всех тарифах нашего хостинга доступ по протоколу SSH выключен.

Чтобы включить доступ по SSH, потребуется нажать на кнопку включения доступа в Панели Управления аккаунтом. Она располагается на главной странице в разделе "Тех. информация".

Тех. информация

Настройка подключения

Для удаленной разработки VS Code копирует свою бинарную часть, vscode-server, на удаленный сервер и запускает его, после чего клиент обменивается информацией с сервером. Для работы бинарной части требуется проксировать подключение в Docker.

Итак, чтобы с помощью VS Code подключиться к серверу, первым шагом нужно прокинуть публичный SSH-ключ на сервере. Для начала проверьте, нет ли уже созданных ключей. Выполнить это можно прямо из панели управления хостингом, через web-терминал:

ikigai@spirit:~ [0] $ ll -l .ssh/
total 28K
drwx------+  2 ikigai newcustomers 4,0K мая   28  2020 ./
drwx------+ 21 root   root         4,0K марта 19 02:56 ../
-rwx------+  1 ikigai newcustomers  404 мая   28  2020 authorized_keys*
-rwx------+  1 ikigai newcustomers 1,7K мая   28  2020 id_ed25519*
-rwx------+  1 login newcustomers  404 мая   28  2020 id_ed25519.pub*

Если файлы с названием id_ed25519* отсутствуют, сгенерируйте ключ:

ikigai@spirit:~ [0] $ ssh-keygen -q -t ed25519 -f $HOME/.ssh/id_ed25519

Добавьте публичный ключ в доверенные, чтобы подключение по localhost не требовало пароль при каждой попытке подключения.

ikigai@spirit:~ [0] $ cat .ssh/id_ed25519.pub >> .ssh/authorized_keys
ikigai@spirit:~ [0] $ chmod 600 .ssh/authorized_keys

Установка и настройка VS Code

Чтобы установить VS Code, для начала его нужно скачать, сделать это можно здесь.

Также потребуется скачать и установить расширение Remote SSH. Вы можете найти Remote SSH во вкладке «Расширения» (Ctrl+Shift+X):

Remote SSH

После установки расширения вы увидите индикатор в нижнем левом углу строки состояния. Этот индикатор сообщает вам, в каком контексте выполняется VS Code (локальном или удаленном). Щелкните индикатор, чтобы открыть список команд удаленного расширения:

Контекст VS Code

Для подключения к серверу сформируйте конфигурационный файл. Для этого выберите "Connect Current Window to Host…" - "Configure SSH Hosts…" - "... /.ssh/config".

Добавьте и сохраните в файле конфигурации параметры для подключения. Пример конфигурации:

Host ikigai_test
    HostName localhost
    Port 222
    User ikigai
    IdentityFile ~/.ssh/id_ed25519
    ProxyJump ikigai@ikigai.beget.tech
    ProxyCommand ssh -W %h:%p ikigai@ikigai.beget.tech
    StrictHostKeyChecking no
    UserKnownHostsFile NUL

"Host" может быть любым именем. В параметрах "User", "ProxyJump", "ProxyCommand" укажите ваши данные соответственно.

Подключение к серверу

После создания файла конфигурации по индикатору откройте список команд удаленного расширения. Выберите вариант подключения: в текущем окне или в дополнительном.

Вариант подключения

Из списка выберите добавленный вами Host:

Добавленный Host

Выберите операционную систему удаленного сервера – Linux.

 Подтвердить действия

Поздравляем, вы успешно подключились по SSH через VS Code:

Готово

Если возникнут вопросы, напишите нам, пожалуйста, тикет из панели управления аккаунта (раздел “Помощь и поддержка”), а если вы захотите обсудить эту статью или наши продукты с коллегами по цеху и сотрудниками Бегета – ждем вас в нашем сообществе в Telegram.

Теги:

30
32511