Executa um comando remoto após o sudo - su anotheruser no Rundeck

0

Sou novo na Rundeck e estou completamente impressionado com isso e estou tentando executar um trabalho e meu cenário está detalhado abaixo:

    O
  • Rundeck é configurado com autenticação ssh sem senha para o mestre do usuário entre o nó Servidor (servidor de rundeck) e o nó Destino (host remoto do Solaris) para o usuário "master"
  • No nó Destino, quero executar um script /app/acme/stopApp.sh com um usuário appmanager
  • Normalmente e manualmente, quando preciso executar o script acima, prossigo com

    ssh master@server 
    sudo su - appmanager
    

    ou simplesmente

    ssh -t master@server 'sudo su - appmanager'
    

    funciona sem senha e finalmente executa (como appmanager)

    /app/acme/stopApp.sh
    

Mas não sei como reproduzir essas etapas usando o Rundeck. Eu li em algumas mensagens anteriores que para cada rundeck da linha de trabalho use uma nova conexão ssh, então o fluxo de trabalho abaixo sempre falha para mim com as mensagens:

sudo: no tty present and no askpass program specified
Remote command failed with exit status 1

Por favor, alguém poderia me ajudar com algumas informações para resolver esse problema.

Sem essa funcionalidade, eu não seria capaz de introduzir um pouco de DevOps no meu departamento.

Eu li o guia do usuário e o guia de administração, mas não consegui encontrar um exemplo fácil, nem neste fórum, a seguir.

    
por Bera 12.12.2012 / 21:40

2 respostas

0

Desde que eu não sei nada sobre o rundeck, siga meu conselho com um grande grão de sal, mas se você está recebendo uma mensagem de no tty present do sudo, provavelmente, entrando nessa conta de que já conta você estão vindo, não é permitido com uma diretiva NOPASSWORD no arquivo sudoers e está esperando que você insira uma senha. E desde que você está estabelecendo uma conexão sem cabeça (ou seja, notty), está falhando depois de não encontrar nenhum lugar para ler esta senha.

Analise seu arquivo sudoers e veja se você pode encontrar uma linha relevante sobre essa combinação de sudo / login e brinque com ela.

Em um cenário menos provável, o rundeck pode ter sua substituição de sudo de alguma forma, mas eu não conto muito com isso.

    
por 12.12.2012 / 23:06
0

O problema pode ser que o / etc / sudoers tenha "requiretty" ... o que significa que você precisa de um tty para executar o comando sudo. Uma correção é remover esse requisito para o usuário específico adicionando isso ao / etc / sudoers na (s) máquina (s):

Defaults:someuser !requiretty

    
por 26.06.2015 / 22:04