нет запроса при подключении к SSH с использованием переадресации агента

нет запроса при подключении к SSH с использованием переадресации агента

В настоящее время я работаю из дома и мне нужно подключиться к производственному серверу. Политика безопасности на работе не позволяет VPN-клиентам подключаться к производственным экземплярам. Поэтому я решил, что могу настроить переадресацию агента через сервер разработки (к которому у меня есть доступ), поскольку это разрешено.

Для этого я сначала включил переадресацию агентов для сервера разработки:

  1. Я добавил ForwardAgent yesдля ~/.ssh/configзаписи сервера разработки на моем компьютере
  2. Я побежал eval 'ssh-agent'запускать ssh агент
  3. Я добавил свой ssh-ключ к агенту с помощьюssh-add ~/.ssh/id_rsa
  4. Я подключился к серверу разработки с помощьюssh -A <devserver>
  5. На сервере разработки я попытался подключиться к рабочему серверу с помощьюssh -T me@<prodserver>

После этого я смог запускать команды на производственном сервере. Однако я так и не увидел фактического приглашения bash.

Отсутствует приглашение bash

Могу ли я что-то сделать, чтобы убедиться, что подсказка отображается?

введите описание изображения здесь

решение1

На последнем шаге запустите sshбез -Tопции:

-T      Disable pseudo-terminal allocation.

Использование этой -Tопции фактически отключает выделение TTY, что, в свою очередь, лишает вас возможности получить оболочку.

mtak@rubiks:~/bla(develop)$ ssh gen1
THIS IS A PRIVATE COMPUTER SYSTEM. Unauthorized access prohibited.
You have mail.
Last login: Tue Mar 10 10:45:25 2020 from vpn-int-2.int.mtak.nl
mtak@gen1:~$ logout
Connection to gen1 closed.

mtak@rubiks:~/bla(develop)$ ssh -T gen1
THIS IS A PRIVATE COMPUTER SYSTEM. Unauthorized access prohibited.
You have mail.
date
ma mrt 16 16:12:53 CET 2020

решение2

Я попытался подключиться к рабочему серверу с помощьюssh -T me@<prodserver>

Вы не получаете подсказку, потому что используете -Tопциюсказал ssh отключить терминальный режим(выделение tty).

Наличие tty — это то, как все программы определяют, запускаются ли они интерактивно (т. е. подключены к терминалу/клавиатуре) или получают команды из файла или конвейера. В последнем случае, т. е. в "пакетном" режиме, оболочки обычно отключают все запросы; такие инструменты, как 'ls', теряют свое красивое форматирование и цветной вывод; и так далее.

Связанный контент