Armazenar senhas geralmente está errado . O login através de ssh
armazenar a senha do usuário em ~/.bashrc
(e / ou no histórico dos comandos) não é seguro por razões óbvias; pode-se usar ssh
keys, como sugerido nos comentários por lemonslice.
No entanto, se este é o caminho que você deseja seguir, basta enviar a senha para o comando ssh
; usar echo
com a opção -e
irá escapar de seqüências de escape, como \n
, permitindo que você falsifique o hit da tecla Return e até mesmo passe por vários prompts:
echo -ne 'password\n' | ssh user@host
user@debian ~ % echo -ne 'password1\n' | ssh user@localhost
Pseudo-terminal will not be allocated because stdin is not a terminal.
user@localhost's password:
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
zsh: command not found: password1
user@debian ~ % echo -ne 'password1\npassword2\npassword3\n' | ssh user@localhost
Pseudo-terminal will not be allocated because stdin is not a terminal.
user@localhost's password:
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
zsh: command not found: password1
zsh: command not found: password2
zsh: command not found: password3