Como executar o Ansible com comandos sudo no password com sintaxe tornar-se


8

Quando executo ansible em uma máquina host que possui alguns comandos que preciso executar como root, não posso executá-los com "torne" porque executa os comandos como root em vez de apenas executá-los com o sudo.

O que venho fazendo é apenas usar command: sudo ... e suprimir avisos com

args: 
  warn: no

existe uma maneira melhor e mais padronizada de executar uma linha de comando do linux com sudo sans password?


Qual é a verdadeira razão disso? É possível usar sudosob o capô quando você executa uma tarefa com become.
Konstantin Suvorov

11
@kon quando uso becomerecebo "msg": "Missing sudo password"por uma razão de falha #
Peter Turner

Respostas:


6

Quando executo ansible em uma máquina host que possui alguns comandos que preciso executar como root, não posso executá-los com "torne" porque executa os comandos como root em vez de apenas executá-los com o sudo.

Isso não é verdade; becomeusa uma variedade de métodos para escalonamento de privilégios e o padrão é usar sudo.

Você talvez esteja enfrentando uma das limitações conhecidas do módulo tornar-se , como tentar limitar o acesso ao sudo a determinados comandos ?


Bem, isso parece ser uma das limitações do ansible, quando eu corro -vvv, está fazendo sudo -H -S -n -u root /bin/sh -c 'bunch of stuff'. Eu imaginei que ele poderia executar o comando que eu quero com privilégios de sudo, mas acho que isso é um pouco ingênuo, pois ele precisa executar 1000 outros tipos de comandos com root de uma maneira mais geral.
Peter Turner

2

Você já tentou -K? Eu sempre uso esta opção e, em seguida, uma senha sudo deve ser inserida


Sim, o problema é que o usuário ssh que estou usando não tem direitos para iniciar um shell como root, apenas para os comandos que desejo executar via ansible.
Peter Turner

Eu não acho que seja possível executar comandos como root se o usuário não puder iniciar um shell tão root quanto o ansible estiver basicamente executando comandos via ssh.
030
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.