Отказано в доступе от Bastion к Private ec2
Я настроил бастионный общедоступный хост ec2, а также настроил частный ec2, для которого входящее правило безопасности установлено на ssh только из группы безопасности бастиона. Но есть два разных сценария. Я добавил оба закрытых ключа в ssh-agent, и я пытаюсь сделать это с Windows-машины с помощью cmd.exe.
Когда я пытаюсь получить доступ с помощью этой команды ниже, он может получить доступ без каких-либо проблем.
ssh -J ubuntu@ip-public ubuntu@ip-private
Когда я сначала обращаюсь к серверу бастиона, я могу успешно войти в систему, но из бастиона я пытаюсь использовать эту команду, но терпит неудачу:
ssh ubuntu@ip-private
channel 1: chan_shutdown_read: shutdown() failed for fd 7 [i0 o0]: Not a socket ubuntu@privateip: Permission denied (publickey).
Я пробовал несколько раз, но возвращал ту же ошибку. Не знаю, насколько профессионально должен быть настроен этот бастион. Жду помощи и предложений по этому поводу. Никогда раньше не пробовал.
1 ответ
Примечание. Я получил это упражнение, работающее из окна терминала Ubuntu WSL.
В результате вам нужен SSH-сервер, чтобы получать ssh-запросы от клиентов.
- Убедитесь, что ваш экземпляр Windows запущен
- RDP в инстанс (только один раз)
- Введите powershell в командной строке, чтобы выйти из cmd
- Выполните следующую команду, чтобы определить, установлен ли у вас OpenSSH.Server.
Get-WindowsCapability-Online | ? Имя похожее на 'OpenSSH*'
- Установить сервис
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
- Через минуту или две он устанавливается (наберитесь терпения)
- Установите службу для автоматического запуска службы в случае остановки экземпляра
Set-Service -Name sshd -StartupType "Автоматически"
- Запустите службу OpenSSH.Server, которая называется sshd.
Старт-Сервис sshd
- Выйдите из оболочки экземпляра и сеанса RDP
- Вернитесь в свою оболочку на вашем компьютере
- Запустите свою обычную команду ssh, чтобы войти в инстанс EC2. Вам будет предложено ввести пароль. Есть способы обойти это.