cesar
(usa CentOS)
Enviado em 14/10/2008 - 07:57h
Procurando no Google encontrei está solução, dê uma lida,
o link do autor é
http://www.zago.eti.br/ssh/ssh-sem-senha.txt
[]'s
sshpass
Non-interactive ssh password auth
Passar senha na linha de comando e scripts.
http://sourceforge.net/projects/sshpass/
Ambiente de teste, SUSE 10.1
Não encontrei rpm, a solução foi instalar a partir dos fontes.
Para compilar precisa instalar o make e gcc, via smart execute.
smart install make -y
smart install gcc -y
download do pacote sshpass-1.00.tar.gz e salvar em /tmp/sshpass
mkdir /tmp/sshpass
cp sshpass-1.00.tar.gz /tmp/sshpass
cd /tmp/sshpass
tar zxvf sshpass-1.00.tar.gz
cd sshpass-1.00
./configure
make
make install
Depois de instalado consulte o manual (man sshpass)
-p passa a senha na linha de comando.
-f pega a senha em arquivo, indique o caminho e arquivo com a senha
Detalhe muito importante, só funciona entre maquinas que
já tenha feito alguma conexão via ssh, não encontrei uma maneira
de responder yes naquela mensagem da primeira conexão. Caso tente a primeira conexão com sshpass, ao dar enter cai para proxima linha e não acontece nada, fica com o cursor travado.
A solução é fazer uma conexão via ssh, depois pode usar sshpass nas demais conexões entre as maquinas.
Também não funciona no console do root, não tentei configurar esta opção,
falhou na instalação padrão.
Alguns exemplos de linha de comando
sshpass -p senhadestino ssh usuario@ipdestino
sshpass -p minhasenha ssh zago@192.168.1.120
sshpass -p minhasenha ssh -l zago 192.168.1.120
sshpass -f /home/zago/senhasamba ssh zago@192.168.1.120