Usando pseudo tty com ssh e mestre de controle resulta em aviso

3

Estou configurando o seguinte para alguns dos meus usuários.

  • Máquina A, executando OpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips
  • Máquina B, executando o OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.8, OpenSSL 1.0.1f
  • Ambos os servidores são Linux e eu administro o último.

Os usuários têm contas nas duas máquinas e eles fazem ssh manualmente de B para A, por exemplo, digitando ssh A e trabalhe em A. Seu ~/.ssh/config se parece com:

Host *
ControlMaster auto
ControlPath /tmp/ssh_mux_%h_%p_%

Enquanto executam outras coisas em B, eles também (indiretamente) executam comandos como ssh -tt A xxx (onde xxx é algo complicado) porque, enquanto fazem o que estão fazendo em B, ele precisa encontrar algumas coisas que precisam ser encontrado dessa maneira. Graças ao mestre de controle, eles não ficam incomodados o tempo todo com solicitações de senha (a máquina A não está sob meu controle e não aceita logins baseados em chave). Observe que xxx invoca algum código que não funcionaria se eu não usasse -tt . Você pode alegar que tal código está quebrado e eu posso concordar, mas forçar o tty a faz feliz.

Tudo funciona bem, mas a conexão manual que eles abriram de B para A fica cheia (e praticamente inutilizável) por mensagens:

process_mux_new_session: tcgetattr: Inappropriate ioctl for device

Isso parecia relacionado ao link e link

Existe alguma maneira de silenciar essas mensagens para tornar a primeira conexão útil sem que elas precisem abrir outra?

    
por Davide 19.05.2017 / 19:59

2 respostas

1

Aumento do @MarkWagner comenta o status da resposta.

Based on the patch in the bug you need to add -q to the one of ssh invocations (I'm not sure which.) – May 19 at 19:42

Com base em alguns testes rápidos, parece que a conexão manual aberta de B para A é a que precisa do -q

    
por 22.05.2017 / 23:33
0

Eu procuraria MaxSessions no servidor-A

grep MaxSessions /etc/ssh/sshd_config

e nos clientes ~ / .ssh / config ControlPersist timeouts

Host *
ControlMaster auto
ControlPath /tmp/ssh_mux_%h_%p_%r
ControlPersist 10m

Você também pode preferir ControlPath ~ / tmp / ssh_mux_% h_% p_% r para evitar que os usuários substituam os arquivos uns dos outros

Além disso, o controlpath usa o nome do host '% h', que pode variar na invocação.

Outra possível solução pode ser encontrada ajustando as configurações do terminal

ssh server_A TERM=tn3270 /opt/wierd/complex_command.cobol

Ou até mesmo executá-lo na tela      link      link

    
por 19.05.2017 / 22:30

Tags