Połączenie do serwera przez SSH w edytorze VSCode – Visual Studio Code

Czy kiedykolwiek zdarzyło Ci się pracować zdalnie otwierając najpierw klienta FTP, edytować plik na serwerze, zapisywać zmiany, a następnie obserwować logi w konsoli przez klienta SSH? W takim trybie pracy potrzeba aż 3 różnych programów. Co gdyby wszystko to dało się ogarniać korzystając tylko z jednego? Dzięki funkcji vscode ssh to prostsze niż myślisz.
Co to jest VSCode?
Visual Studio Code, często nazywany po prostu VSCode, to wieloplatformowy edytor kodu źródłowego stworzony przez firmę Microsoft. Jest on dostępny za darmo i cieszy się dużą popularnością wśród programistów na całym świecie. VSCode łączy w sobie zalety edytora tekstowego i potężnego środowiska programistycznego (IDE), oferując szeroki wachlarz funkcji, które wspierają pisanie, debugowanie oraz testowanie kodu.

VSCode działa na systemach Windows, macOS oraz Linux. VSCode posiada wbudowaną integrację z Git, co pozwala na łatwe zarządzanie wersjami kodu bez konieczności opuszczania edytora. Dzięki bogatej bazie rozszerzeń, użytkownicy mogą dostosować VSCode do swoich potrzeb, dodając funkcje takie jak obsługa różnych języków programowania, integrację z systemami kontroli wersji, czy wsparcie dla narzędzi deweloperskich. A jeszcze lepszą funkcjonalność osiągniesz poprzez bezpośrednie połączenie się do zdalnego serwera używając SSH. Jak to zrobić?
Visual Studio Code i praca zdalnie przez zdalne połączenie
Każdy programista ma swój stos narzędzi i swój własny workflow, który z biegiem lat opłaca się zoptymalizować. Z biegiem czasu popadamy w rutynę zachowań, które potem stają się naszym nawykiem. Jak na przykład: uruchamianie 3 narzędzi do jednego zadania. Łapałem się na tym że uruchamiałem klienta FTP aby edytować plik na zdalnym serwerze webowym, a potem jeszcze program puTTy żeby obserwować logi czy wykonać komendę ’reload’. A można prościej.
VScode posiada ogromne repozytorium dodatków. Jednym z takich dodatków jest oficjalny zestaw od Microsoft pod nazwą Remote Development.
Dzięki dodatkowi wyeliminujesz potrzebę kopiowania plików między systemami. Będziesz mógł połączyć się z serwerem Linuxowym z systemu Windows i pracować na projektach bez potrzeby instalowania dodatkowego oprogramowania na lokalnej maszynie. Dodatek umożliwia również uruchamianie VSCode wewnątrz kontenera Docker czy uruchomienie pełnej instancji VSCode w środowisku WSL.
Sprawdź naszą platformę hostingową dla programistów, którzy nie chcą serwera VPS!
Podczas korzystania z dodatku Remote Development w Visual Studio Code do zdalnego połączenia przez SSH, na zdalnym serwerze uruchamiane są dodatkowe procesy, które umożliwiają działanie VSCode na zdalnej maszynie tak, jakby działało lokalnie:
admin 21419 0.0 1.9 1363772 120040 ? Sl 08:31 0:03 /home/admin/.vscode-server/cli/servers/Stable-b1c0a15df1414fcdaa410695b4db1c0799bc3124/server/node /home/admin/.vscode-server/cli/servers/Stable-b1c0a15df1414fcdaa410695b4db1c0799bc3124/server/out/server-main.js --connection-token=remotessh --accept-server-license-terms --start-server --enable-remote-auto-shutdown --socket-path=/tmp/code-0192b624-1921-4003-8513-9df788ca1efe
Jak połączyć się przez SSH w VScode?
Najpierw zainstalujemy pakiet dodatków w VScode. W tym celu uruchom Visual Studio Code i naciśnij ctrl+P i [1] wklej w prompt komendę:
ext install ms-vscode-remote.vscode-remote-extensionpack
lub [2] przejdź na stronę dodatku ( Visual Studio Code Remote Development Extension Pack ) i kliknij w przycisk Install.
Zrzuty ekranu pochodzą z instalacji VSCode w systemie Linux Ubuntu ale analogiczne kroki są w przypadku innych systemów jak Windows czy macOS.

Zostaną zainstalowane dodatki, a na pasku pojawi się nowa ikonka.

Teraz ustanowimy nowe połączenie ze zdalnym serwerem poprzez SSH. W tym celu kliknij na [1] ikonkę dodatku, a następnie na liście SSH [2] kliknij w + plus, aby dodać nowe połączenie.

[3] Podaj użytkownika i adres zdalnego hosta. Możesz też wskazać port. Składnia jest podobna jak w domyślny połączeniu ssh z konsoli.
uzytkownik@host -p{numer-niestandardowy-portu-ssh}W następnym kroku zostaniesz zapytany w [1] jakiej ścieżce trzymać konfigurację do tego połączenia. Domyślnie możesz wskazać swój katalog domowy.

Wyświetli się informacja że host został dodany. [2] Tu możesz otworzyć swój plik konfiguracyjny i wprowadzić teraz zmiany lub [3] połączyć się z serwerem. Ale lepiej [4] połączyć się z nim wybierają z listy serwerów i otwierając w nowym oknie.
Jeśli po dodaniu hosta SSH nie widzisz go na liście – odśwież REMOTES na ikonce w pasku bocznym.
Dalej zaakceptuj [1] standardową identyfikację połączenia do hosta.

Gotowe. Podłączenie wykonane. Co teraz?
Masz dostęp do folderów lokalnych na serwerze. [1] Otwórz jakiś folder w VScode.

Następnie wskaż [1] folder do otwarcia i kliknij [2] OK.

Teraz możesz już otwierać [1] pliki i foldery zdalne tak jak dotychczasowy projekt lokalny. Możesz również uruchomić zdalny [2] Terminal.

i pracować na nim jak na normalnym kliencie SSH.

Logowanie do SSH w VScode – poprzez klucze.
Standardowo dodatek Remote Development nie przechowuje haseł. To znaczy że przy połączeniu będzie pytał Cię za każdym razem o hasło. Może być to uciążliwe, dlatego najlepiej korzystaj z bezpiecznej metody logowania SSH z wykorzystaniem kluczy.
Wystarczy że w konfiguracji tekstowej połączenia wykorzystasz przykładową składnię i wskażesz ścieżkę do swojego klucza SSH:
Host mojserwer.pl HostName srv.mojserwer.pl User admin Port 1022 IdentityFile ~/.ssh/mojserwer.pl.key


