Pesquisar

36.3. Utilização de um livro de jogo possível para garantir o acesso sudo para um usuário IdM em um cliente IdM

download PDF

No Gerenciamento de Identidade (IdM), você pode garantir que sudo tenha acesso a um comando específico concedido a uma conta de usuário IdM em um host IdM específico.

Complete este procedimento para garantir a existência de uma regra chamada idm_user_reboot no site sudo. A regra concede a idm_user a permissão para executar o comando /usr/sbin/reboot na máquina idmclient.

Pré-requisitos

Procedimento

  1. Criar um arquivo de inventário, por exemplo inventory.file, e definir ipaservers no mesmo:

    [ipaservers]
    server.idm.example.com
  2. Adicione um ou mais comandos em sudo:

    1. Criar um livro de exercícios ensure-reboot-sudocmd-is-present.yml que garanta a presença do comando /usr/sbin/reboot no banco de dados do IdM de sudo comandos. Para simplificar esta etapa, você pode copiar e modificar o exemplo no arquivo /usr/share/doc/ansible-freeipa/playbooks/sudocmd/ensure-sudocmd-is-present.yml:

      ---
      - name: Playbook to manage sudo command
        hosts: ipaserver
        become: true
      
        tasks:
        # Ensure sudo command is present
        - ipasudocmd:
            ipaadmin_password: MySecret123
            name: /usr/sbin/reboot
            state: present
    2. Execute o livro de brincadeiras:

      $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-reboot-sudocmd-is-present.yml
  3. Criar uma regra sudo que faça referência aos comandos:

    1. Criar um livro de jogo ensure-sudorule-for-idmuser-on-idmclient-is-present.yml que utiliza o comando sudo para garantir a presença de uma regra de sudo. A regra sudo permite que idm_user reinicie a máquina idmclient. Para simplificar esta etapa, você pode copiar e modificar o exemplo no arquivo /usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-is-present.yml:

      ---
      - name: Tests
        hosts: ipaserver
        become: true
      
        tasks:
        # Ensure a sudorule is present granting idm_user the permission to run /usr/sbin/reboot on idmclient
        - ipasudorule:
            ipaadmin_password: MySecret123
            name: idm_user_reboot
            description: A test sudo rule.
            allow_sudocmd: /usr/sbin/reboot
            host: idmclient.idm.example.com
            user: idm_user
            state: present
    2. Execute o livro de brincadeiras:

      $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-sudorule-for-idmuser-on-idmclient-is-present.yml

Etapas de verificação

Teste que a regra sudo cuja presença você garantiu no servidor IdM funciona em idmclient, verificando que idm_user pode reiniciar idmclient usando sudo. Note que pode levar alguns minutos para que as mudanças feitas no servidor tenham efeito sobre o cliente.

  1. Acesse idmclient como idm_user.
  2. Reinicie a máquina usando sudo. Digite a senha para idm_user quando solicitado:

    $ sudo /usr/sbin/reboot
    [sudo] password for idm_user:

Se sudo estiver configurado corretamente, a máquina é reinicializada.

Materiais adicionais

  • Para mais detalhes sobre como aplicar os comandos sudo, grupos de comando e regras no IdM usando um livro de jogo possível, incluindo as descrições das variáveis do livro de jogo, veja os arquivos README-sudocmd.md, README-sudocmdgroup.md e README-sudorule.md Markdown disponíveis no diretório /usr/share/doc/ansible-freeipa/.
Red Hat logoGithubRedditYoutubeTwitter

Aprender

Experimente, compre e venda

Comunidades

Sobre a documentação da Red Hat

Ajudamos os usuários da Red Hat a inovar e atingir seus objetivos com nossos produtos e serviços com conteúdo em que podem confiar.

Tornando o open source mais inclusivo

A Red Hat está comprometida em substituir a linguagem problemática em nosso código, documentação e propriedades da web. Para mais detalhes veja oBlog da Red Hat.

Sobre a Red Hat

Fornecemos soluções robustas que facilitam o trabalho das empresas em plataformas e ambientes, desde o data center principal até a borda da rede.

© 2024 Red Hat, Inc.