Em geral, eu podia ouvir em tempo real o áudio no computador remoto como:
ssh me@gate rec -t mp3 - | play -
por exemplo, no computador nomeado gate
eu poderia executar o comando rec
(ou sox
) e o fluxo de áudio é transferido pela rede, para que eu pudesse reproduzi-lo em tempo real através do comando play
(ou sox
).
Isso funciona bem, especialmente porque eu tenho acesso sem senha ao gate
do meu notebook (usando authorized_keys & authorized_keys2
).
Mas minha topologia é:
+----+ internet +------+ lan +----------+
| my | ----------> | gate | -----> | internal |
+----+ +------+ +----------+
e eu preciso executar o rec
no internal
comp e stdout
deve ser canalizado para o play
comando no my
computador.
Então, quando estou em cascata (aninhando), ssh
s como:
ssh -t me@gate ssh me@internal rec -t mp3 -
(note o -t
para ssh
)
- portanto, o
gate
é acessado sem senha - no
gate
é executado o segundo (aninhado)ssh
- então o
internal
me pede a senha (-t
) - e quando digito a senha,
internal
orec
comando inicia corretamente - e eu pude assistir ao lixo de dados binários recebido no meu terminal local.
Infelizmente, isso não funciona quando estou tentando canalizar para play
, por exemplo, este
ssh -t me@gate ssh me@internal rec -t mp3 - | play -
não funciona, porque a Password:
string foi redirecionada (por exemplo, não solicitei a senha) e a play
confusão foi confusa.
A configuração do acesso sem senha entre me@gate
-> me@internal
provavelmente pode resolver o problema, mas não quero isso - quero inserir manualmente a senha na internal
comp.
Alguma idéia de como resolver isso?
-t
não pede uma senha ... " Desativar alocação de pseudo-terminal " .