O Ansible se tornou Diretiva para executar comandos como usuário especificado

O Ansible se tornou Diretiva para executar comandos como usuário especificado

Usando Ansible, você pode executar várias operações em máquinas remotas usando comandos brutos ou manuais de Ansible. Por padrão, um manual Ansible é executado no host remoto como o mesmo usuário no Ansible Controller. Isso significa que, se você precisar executar um comando como outro usuário na máquina remota, precisará especificá -lo explicitamente em seu manual Ansible.

Para implementar a funcionalidade dos comandos em execução como outro usuário, você precisará usar o recurso sudo que está disponível nos sistemas Linux. O Ansible se tornaria diretiva permite que você execute comandos como o usuário especificado.

As informações do usuário são especificadas em um manual Ansible usando as variáveis ​​que se tornam, como se tornar_pass, para especificar a senha do usuário se tornar_user, bem como qual usuário pode executar o comando.

Como executar tarefas Ansible como raiz

Para executar um comando específico como o usuário root em Ansible, você pode implementar a diretiva e definir o valor como 'true.'Fazer isso diz Ansible para implementar o sudo sem argumentos ao executar o comando.

Por exemplo, considere um manual Ansible que atualiza o pacote MySQL-Server e depois reinicie-o. Nas operações normais do Linux, você precisaria fazer login como usuário root para executar essas tarefas. Em Ansible, você pode simplesmente ligar para a diretiva: sim, como mostrado abaixo:

- Hosts: todos
Torne -se: Sim
tarefas:
- Nome: Ansible Run como raiz e atualização Sys
yum:
Nome: MySQL-Server
Estado: mais recente
- nome:
serviço.serviço:
Nome: MySqld
Estado: reiniciado

No manual acima, usamos a diretiva e não especificamos o usuário FENDER_USER, já que qualquer comando sob a diretiva é executado como root por padrão.

Isso é semelhante a especificá -lo como:

- Hosts: todos
Torne -se: Sim
tornar -se_user: root
tarefas:
- Nome: Ansible Run como raiz e atualização Sys
yum:
Nome: MySQL-Server
Estado: mais recente
- Nome: Serviço.serviço:
Nome: MySqld
Estado: reiniciado

Como executar tarefas Ansible como sudo

Para executar uma tarefa Ansible como um usuário específico, e não o usuário root normal, você pode usar a diretiva FENDER_USER e passar o nome de usuário do usuário para executar a tarefa. É como usar o comando sudo -u no Unix.

Para implementar a diretiva FENDER_USER, você deve ativar a diretiva se tornar primeiro, à medida que o FENHERSE_USER é inutilizável sem essa diretiva ativada.

Considere o seguinte manual, no qual o comando é executado como o usuário ninguém.

- Nome: Execute um comando como outro usuário (ninguém)
Comando: PS Aux
tornar verdade
tornar -se_method: su
Torne -se_user: Ninguém
tornar-se_flags: '-s /bin /bash'

No trecho de manual acima, implementamos o FENHER, tornou -se_user e outros se tornam diretrizes.

  1. tornar -se_method: Isso define o método de escalação de privilégios, como SU ou SUDO.
  2. Diretiva Torne -se_User: Isso especifica o usuário a executar o comando como; Isso não implica se tornar: sim.
  3. tornar -se_flags: Isso define os sinalizadores a serem usados ​​para a tarefa especificada.

Agora você pode executar o manual acima com o nome de arquivo Ansible-playbook.yml e veja o resultado para você. Para tarefas com uma saída, pode ser necessário implementar o módulo de depuração.

Como correr Ansible se tornará com senha

Para executar uma diretiva que requer uma senha, você pode dizer a Ansible para pedir uma senha ao invocar o manual especificado.

Por exemplo, para executar um manual com uma senha, digite o comando abaixo:

Ansible-playbook se tornar_pass.YML --SK-BECOME-PASS

Você também pode especificar o sinalizador -k, que executa operações semelhantes ao comando acima. Por exemplo:

Ansible-playbook se tornar_pass.yml -k

Uma vez especificado, você será solicitado para uma senha quando as tarefas estiverem executando.

OBSERVAÇÃO: Você também pode usar a diretiva e tornar -se em comandos Ansible Ad Hoc Raw usando o sinalizador -b. Para saber mais, consulte a documentação fornecida abaixo:

https: // linkfy.para/se tornou documentação

Conclusão

Depois de ler este artigo, agora você deve saber como usar o Ansible se tornará uma diretiva para executar a escalada de privilégios para várias tarefas.

Por razões de segurança, é melhor implementar restrições para várias contas e especificar explicitamente quando eles são usados. Portanto, a escalada de privilégios é um aspecto importante do uso de sudo e su em Ansible.