Como posso obter um shell sem pty

1

Eu estou no processo de consertar um script que falha porque invoca sudo em um ambiente sem um pty que tem um arquivo sudoers definindo Default requiretty .

O script é executado por root e usa sudo para chamar binários que dependem de serem executados por usuários específicos, portanto, minha solução foi substituir os sudo por su .

Agora quero testar minhas modificações, mas é difícil reproduzir o ambiente em que sudo falhou:

  • Eu posso acessar a máquina através de outro usuário e, em seguida, logar como root com sudo su - . Eu não sei a senha de root .

  • Eu sei como acessar a máquina sem um pty com ssh -T , mas não consigo mais logar como root porque sudo falha.

Como eu poderia obter um shell de raiz sem pty?

    
por Aaron 15.06.2017 / 12:14

1 resposta

2

A primeira coisa que eu tentarei é executar seu script com at ou cron .

Exemplo:

at now <<< "sudo echo 'This will fail if sudoers requiretty' 2>/tmp/stderr >/tmp/stdout" 
    
por 15.06.2017 / 17:22

Tags