Невозможно настроить удаленную пересылку конфигурации ssh из Local -> Bastion -> EC2

Обзор

Я пытаюсь настроить ~ / .ssh / config для подключения моего локального VSCode к удаленному (EC2). Я провел много тестов и не могу понять, почему одна ситуация работает, а другие терпят неудачу. Я могу заставить RemoteCommand успешно работать для ssh'ing в экземпляр EC2 после ssh'ing в BastionHost, однако я не могу добиться того же с ProxyJump или ProxyCommand. VSCode не перечисляет файловую систему EC2 при использовании примера RemoteCommand (просто доходит до BastionHost), поэтому думаю, что мне нужно разрешить либо ProxyJump / ProxyCommand на основе большей части документации.

Я пытался точно следовать приведенным здесь инструкциям, но безуспешно пробовал разные подходы из других статей.

      ##WORKS
Host dev-ec2
  HostName 10.248.000.206
  User meme1
  RemoteCommand ssh 10.248.000.201
  RequestTTY yes
  IdentityFile ~/.ssh/mykey

##WORKS
Host bastion-dev
  HostName 10.248.000.206
  User meme1
  IdentityFile ~/.ssh/mykey
  RequestTTY yes

##FAILS (times out)
Host dev-ec2-proxycommand
  HostName 10.248.000.201
  User meme1
  ProxyCommand ssh.exe bastion-dev -W %h:%p

##FAILS (Permission denied on public key, even though no issue in the RemoteCommand example)
Host ec2-dev-proxyjump
  HostName 10.248.000.201
  User meme1
  ProxyJump bastion-dev
  IdentityFile ~/.ssh/mykey

Системная информация

ОС: Windows 10

Отказ от ответственности

Последние пару дней я безрезультатно просматривал StackOverflow и другие форумы, и хотя я нашел похожие вопросы, ни один из них не дал жизнеспособных ответов для решения.

1 ответ

Я полагаю, что этот ниже не работает, потому что вы используете команду из Windows на своем бастионе, то есть в Linux.
Командование ssh.exeне будет работать в Linux. Все, что вы надеваете ProxyCommand будет работать внутри вашего хоста-бастиона, в вашем случае это ОС Linux.

Также убедитесь, что группа безопасности вашего экземпляра разрешает подключение с IP-адреса бастиона, а не с вашего компьютера.

      ##FAILS (times out)
Host dev-ec2-proxycommand
  HostName 10.248.000.201
  User meme1
  ProxyCommand ssh.exe bastion-dev -W %h:%p

У меня есть конфигурация ниже на моем ~/.ssh/config файл, и он отлично работает для меня, чтобы подключиться к моему экземпляру за хостом бастиона.

Бастион IP: 172.31.4.238
IP хоста (за бастионом): 172.31.11.98

      Host 172.31.11.98
  HostName 172.31.11.98
  User ec2-user
  ProxyCommand ssh -W %h:%p ec2-user@172.31.4.238

См. Ниже

      $ ssh 172.31.11.98
The authenticity of host '172.31.11.98 (<no hostip for proxy command>)' can't be established.
ECDSA key fingerprint is SHA256:vy....
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '172.31.11.98' (ECDSA) to the list of known hosts.

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-2/
[ec2-user@ip-172-31-11-98 ~]$
Другие вопросы по тегам