Usar um script Expect para enviar uma senha de texto sem formatação é geralmente uma idéia muito ruim. Se você precisa de conexões SSH com scripts e sem senha, é muito melhor usar a autenticação de par de chaves:
ssh-keygen # and then follow the prompts; don't set a passphrase
ssh-copy-id [email protected]
Depois disso, você pode usar ssh [email protected]
sem precisar digitar sua senha.
Você ainda pode usar o muxing de conexão de controle configurado com as diretivas Control
em ~/.ssh/config
e fechar a conexão principal com ssh -O exit [email protected]
.
Você também deve usar a utilidade ssh
de simplesmente executar comandos remotamente - depois de configurar a autenticação de pares de chaves, você pode ter:
ssh [email protected] /etc/init.d/dnsmasq restart
no seu script e pronto para ir.