nenhum prompt quando conectado ao SSH usando encaminhamento de agente

nenhum prompt quando conectado ao SSH usando encaminhamento de agente

Atualmente estou trabalhando em casa e preciso me conectar a um servidor de produção. A política de segurança em vigor não permite que clientes VPN se conectem a instâncias de produção. Sendo assim, imaginei que poderia configurar o encaminhamento de agente através do servidor de desenvolvimento (que posso acessar), já que isso é permitido.

Para fazer isso, primeiro habilitei o encaminhamento de agente para o servidor de desenvolvimento:

  1. Eu adicionei ForwardAgent yespara ~/.ssh/configa entrada do servidor de desenvolvimento no meu computador
  2. Corri eval 'ssh-agent'para iniciar o agente ssh
  3. Adicionei minha chave ssh ao agente usandossh-add ~/.ssh/id_rsa
  4. Eu me conectei ao servidor de desenvolvimento usandossh -A <devserver>
  5. No servidor de desenvolvimento, tentei conectar-me ao servidor de produção usandossh -T me@<prodserver>

Depois disso, consegui executar comandos no servidor de produção. No entanto, nunca vejo o prompt do bash real.

Faltando o prompt do bash

Há algo que eu possa fazer para garantir que o prompt seja exibido?

insira a descrição da imagem aqui

Responder1

Na última etapa, execute sshsem a -Topção:

-T      Disable pseudo-terminal allocation.

O uso da -Topção desativa a alocação de um TTY, o que, por sua vez, faz com que você não obtenha um shell.

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

Responder2

Tentei me conectar ao servidor de produção usandossh -T me@<prodserver>

Você não está recebendo uma solicitação porque está usando a -Topçãodisse ao ssh para desabilitar o modo terminal(alocação tty).

A presença de um tty é como todos os programas determinam se estão sendo executados interativamente (ou seja, conectados ao terminal/teclado) ou se estão recebendo comandos de um arquivo ou canal. No último caso, ou seja, modo "lote", é normal que os shells desabilitem todos os prompts; ferramentas como 'ls' perdem sua formatação sofisticada e saída colorida; e assim por diante.

informação relacionada