Linux PuTTY - automatiza o su para um problema relacionado à senha

0

Estou conectando a um servidor via PuTTY da seguinte forma:

putty.exe -ssh user@host -pw password -noagent -m commands.txt

Depois disso, preciso usar:

su someUser

Ele pedirá uma senha - coloquei isso dentro do comando.txt, mas não está funcionando.

Como posso automatizar o comando su (incluindo senha) em uma única linha que posso colocar dentro do command.txt? Ou talvez haja uma abordagem diferente?

Eu não quero usar o sudo ou executar e tudo. Eu tentei com:

echo password | su someUser

No entanto, a tubulação dessa maneira não funcionou.

    
por 3498DB 17.06.2011 / 12:50

3 respostas

2

Você pode desabilitar as perguntas de senha adicionando uma linha específica de script / programa no arquivo / etc / sudoers: yourusername ALL = (TODOS) NOPASSWD: / usr / local / bin / whatever

    
por 17.06.2011 / 13:22
0

É vital para você usar su e salvar a senha em um arquivo? Se não usar uma abordagem diferente, porque:

$ su << LOL
> secretpassword
> LOL
su: must be run from a terminal

$ echo secretpassword|su - 
su: must be run from a terminal

Você ficaria melhor com as chaves ssh: Quck ssh-keys intro

    
por 17.06.2011 / 14:04
0

Por que você não quer usar sudo ? O su sempre pedirá a senha usando os recursos do terminal, então você precisa criar um pseudo-terminal para se comunicar com ele. expect pode fazer isso por você.

No entanto, acho que a maneira "correta" de resolver isso é usar um executável suid de propriedade de um usuário específico ou, melhor ainda, usar o sudo configurado corretamente.

    
por 17.06.2011 / 14:48

Tags