VSCode Remote SSH понимает, что локальная машина подключается к удаленному серверу (или докеру на сервере) с помощью трамплина

SSH

задний план

Серверы в лаборатории имеют только внутренний IP-адрес 192.168.1.xx и не могут получить прямой доступ к домашнему соединению.После настройки старшего брата можно использовать другой сервер 47.110.xx.yy для подключения к трамплину. Чтобы подключиться к лабораторному серверу с помощью командной строки, выполните следующие действия:

62CBEAEA-2146-44E0-9B79-84DEA18FEFAD.png

Если вы также хотите подключиться к контейнеру докеров на сервере, вам нужно один раз выполнить sudo exec и снова ввести пароль, что очень лысо, поэтому я хочу использовать vscode remote ssh для достижения двухуровневого перехода и прямого подключения к докер на сервере

Предварительные знания

VSCode Remote SSH реализует операцию подключения локальной машины к удаленному серверу (докер в нем) на данный момент.Вы можете обратиться кVSCode подключается к док-контейнеру на удаленном сервере

Или обратитесь к другим блогам, которые используют плагин vscode для подключения к удаленным серверам.

Здесь мы в основном расскажем, как подключиться к удаленному серверу через промежуточный трамплин.

начать настройку

  1. Нажмите на плагин ssh - нажмите на шестеренку в правом верхнем углу

38D6999E-E733-479D-88AA-9E14E1048603.png

  1. Вы можете напрямую выбрать первый файл конфигурации ssh по умолчанию

5618E45B-AE15-4DA4-A125-7FE44A671847.png

  1. Настройте в соответствии с вашим собственным трамплином и удаленным сервером

мой случай

  • IP трамплинной машины 47.110.xx.yy, на ней авторизован ssh-ключ машины (можно войти без пароля), о беспарольном способе см.Сервер входа без пароля SSH
  • IP-адрес сервера — 192.168.1.xx, а порт, открытый док-контейнером, — 6789.

На самом деле, самая фундаментальная конфигурация трамплина такова: ProxyCommand ssh -W %h:%p <SPRINGBOARD_NAME>И убедитесь, что это имя соответствует имени трамплина, определенному выше.

Host invix_springboard
  HostName 47.110.xx.yy
  Port 6000
  User root
  IdentityFile ~/.ssh/id_rsa

![38D6999E-E733-479D-88AA-9E14E1048603.png](https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/68e94f8586414fe9bbbc5e9896ebc1c1~tplv-k3u1fbpfcp-watermark.image)
Host server
  HostName 192.168.1.xx
  Port 6789
  User root
  ProxyCommand ssh -W %h:%p invix_springboard

Подключиться с помощью

Затем вы можете напрямую нажать кнопку подключения удаленного сервера — введите пароль и завершите подключение 🎉

64658828-1C18-4D7A-A20D-BE86D5E76342.png

Resources

vscode подключается к удаленному серверу через трамплин (машину-бастион) - Блог TheWaySoFar-CSDN