Como verificar se o login como superusuario foi autenticado ou se a senha está incorreta

1. Como verificar se o login como superusuario foi autenticado ou se a senha está incorreta

Nicolas Bittencourt
nick_bittencourt

(usa Outra)

Enviado em 09/08/2012 - 11:13h

Bom dia,

Estou desenvolvendo um script corporativo para atualização de repositórios e instalação de alguns programas (basicamente o script se logará como superusuário, atualizará o repositório e fará a instalação dos programas desejados)..
No entanto, percebi que em algumas máquinas a senha do superusuário varia em duas: "1234" e "4321", por exemplo.
O que preciso é saber se existe a possibilidade de via terminal eu tentar logar como superusuário utilizando uma dessas senhas, caso dê certo continua o comando, caso dê errado tentar outra senha. E se nenhuma das duas, emitir uma mensagem.
Lembrando que essas duas senhas estão armazenadas no próprio script (o usuário vai apenas executar, ele não vai digitar NADA no terminal), com isso essas duas senhas estarão fixadas em duas variáveis, $s1 e $s2 por exemplo.

Também vale ressaltar que não há preocupação com a segurança (por a senha estar exposta no script), o objetivo é apenas entrar no superusuário e executar os comandos que desejo.

Desde já agradecido.


  


2. Re: Como verificar se o login como superusuario foi autenticado ou se a senha está incorreta

Raimundo Alves Portela
rai3mb

(usa Outra)

Enviado em 09/08/2012 - 11:48h

Como vc esta fazendo pra logar, com qual comando? Dependendo do comando, basta fazer



if ! COMANDO_PRA_LOGAR; then
if ! COMANDO_PRA_LOGAR_NOVAMENTE; then
echo 'mensagem de erro'
exit
fi
fi


# se chegou arqui, significa que logou com uma das duas senhas e o script pode continuar....



3. sshpass

wesley santos
fed suco

(usa Fedora)

Enviado em 09/08/2012 - 12:09h

voce pode usar o 'sshpass' se for acessar remoto.
ex.: sshpass -p 'password' ssh 'user@host'


4. Re: Como verificar se o login como superusuario foi autenticado ou se a senha está incorreta

Nicolas Bittencourt
nick_bittencourt

(usa Outra)

Enviado em 09/08/2012 - 13:17h

rai3mb escreveu:

Como vc esta fazendo pra logar, com qual comando? Dependendo do comando, basta fazer



if ! COMANDO_PRA_LOGAR; then
if ! COMANDO_PRA_LOGAR_NOVAMENTE; then
echo 'mensagem de erro'
exit
fi
fi


# se chegou arqui, significa que logou com uma das duas senhas e o script pode continuar....


Bom dia, obrigado por responder.
Estou fazendo com "su".
Então ficaria:


if ! su $s1; then
if ! su $s2; then
echo 'erro'
exit
fi
fi


Obrigado!


5. Re: Como verificar se o login como superusuario foi autenticado ou se a senha está incorreta

Nicolas Bittencourt
nick_bittencourt

(usa Outra)

Enviado em 09/08/2012 - 13:18h

fed suco escreveu:

voce pode usar o 'sshpass' se for acessar remoto.
ex.: sshpass -p 'password' ssh 'user@host'


Bom dia, obrigado pela sugestão.
Na verdade, é um script que os técnicos usarão máquina por máquina. O usuário faz a solicitação, ele vai até lá com um pen-drive, por exemplo, e executa o script com o roteiro das instalações.

obrigado



  



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts