Trocar senha de usuário via SSH
Publicado por Raimundo Alves Portela (última atualização em 03/07/2012)
[ Hits: 16.011 ]
Homepage: http://portelanet.com
Script simples e direto, pode ser usado para fazer a troca em massa de senhas de qualquer usuário ( como o root ) em estações remotas.
Salve o arquivo, dê permissão de execução:
chmod +x trocaSenhaSSH.sh
Use-o:
./trocaSenhaSSH.sh usuario@host_or_ip senha_antiga senha_nova
Se quiseres usar em rotinas automatizadas para várias estações com mesmo usuário e senha, como o root, basta fazer um laço while ler o nome ou IP das estações de um arquivo:
while read ESTACAO
do
./trocaSenhaSSH.sh root@${ESTACAO} senha_antiga senha_nova
done < estacoes.txt
#!/usr/bin/expect -f
# tempo limite que o expect vai esperar por uma resposta:
set timeout 30
# configurando as variaveis:
set xHost [lindex $argv 0]
set senha_velha [lindex $argv 1]
set senha_nova [lindex $argv 2]
# enviando o comando ssh para o host
spawn ssh $xHost
# trocando a senha
expect "*password:*" {
send "$senha_velha\r"
expect "*#*"
send "passwd\r"
expect "*password:*"
send "$senha_nova\r"
expect "*password:*"
send "$senha_nova\r"
}
Verificar se um mesmo arquivo está em dois diretórios diferentes
Renomeie vários aquivos de uma vez
Atualizar status do Twitter pelo terminal
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica









