EDITAR
A partir do link que usei como referência, você pode encontrar mais opções.
Se você tiver sshpass
instalado, poderá automatizar a conexão ssh para não precisar digitar sua senha para cada máquina:
SSHPASS='password'
sshpass -e your commands here
Este é um ótimo programa que permite passar uma senha ssh
como um parâmetro de linha de comando. Esta, obviamente, não é uma solução muito segura e eu recomendo que você leia a seção "Considerações de segurança" de man sshpass
.
De qualquer forma, provavelmente está disponível nos repositórios da sua distribuição, nos sistemas baseados no Debian ele pode ser instalado com
sudo apt-get install sshpass
Eu não posso verificar, já que não tenho uma máquina baseada em RedHat, mas pelo que posso dizer, pesquisando aqui , deve ser instalável no Fedora com
sudo yum install sshpass
Depois de ter instalado, você pode simplesmente executar
SSHPASS='password'
sshpass -e your commands
A opção -e
informa sshpass
para obter a senha da variável SSHPASS
. Isso é um pouco mais seguro do que dar a ele um parâmetro com a opção -p
.
IMPORTANTE:
Isso falhará silenciosamente se o servidor ao qual você está se conectando for desconhecido, se sua chave pública não estiver armazenada em sua máquina. Se isso não parecer estar funcionando, basta conectar uma vez ( ssh
ou scp
) à máquina remota e aceitar sua chave pública.
Referências
script para automatizar o scp na rede