como redirecionar a saída do ssh para um arquivo

0

Eu quero fazer a conexão ssh com meu servidor, mas não quero digitar a senha. Eu quero salvar a saída para um arquivo assim:

$ ssh [email protected] -p 22 1>output 2>&1

mas quando eu corro, a saída é mostrada para mim:

[email protected]'s password:

Eu quero este estado redirecionar para um arquivo e não mostrar para mim, em seguida, fechar a conexão ssh imediatamente ...

O que devo fazer?

    
por MLSC 21.10.2015 / 15:39

2 respostas

2

Você não fez nada de errado, só que a entrada da senha é especial.

ssh assume que você não deseja que a entrada de senha atrapalhe o que você queria queria transmitir, por isso usa /dev/tty para o prompt de senha, em vez de stdout .

Você pode dizer a ssh para não pedir senhas como esta:

ssh -o BatchMode=yes [email protected]

Ele será simplesmente encerrado, se não houver uma chave ou uma conexão existente que funcione.

No entanto, não acho que haja uma maneira direta de capturar o texto do prompt "password:".

    
por 21.10.2015 / 15:47
0

Não use uma senha. Use uma chave privada pública com uma senha nula.
ssh -2 -I /home/localloginame/.ssh/astroboy -l seu nome de host de logon \   "cd inbox; ls -l; exit"

O que é esse astroboy? É um arquivo. É uma chave privada. Ao fazer uma chave, você acaba com um parte privada: /home/localloginname/.ssh/astroboy e um parte pública: /home/localloginname/.ssh/astroboy.pub

Agora, como fazer essa chave .... / ???? / ssh / bin / key-gen -t dsa astroboy

Em seguida, pede uma senha. Você pode colocar uma senha nula. Ele vai reclamar, mas continue. Então você tem isso.

Espero que, se eu lhe disser algo errado, alguém me corrija.

    
por 21.10.2015 / 16:19