Wie füge ich einem mit Ansible erstellten Benutzer Sudo-Berechtigungen hinzu?

Wie füge ich einem mit Ansible erstellten Benutzer Sudo-Berechtigungen hinzu?

Was ist die sauberste Art, dies zu tun? Habe versucht, den Benutzer mit dem Benutzermodul zur Sudo-Gruppe hinzuzufügen, aber Ansible meldet, dass es die Sudo-Gruppe nicht finden kann.

Antwort1

Anstatt

- name: create a new user
    user: name=user
          state=present
          groups="group1, group2"
          password={{ password }}
          comment="Comment"

Ich tat

- name: create a new user
    user: name=user
          state=present
          group=primary-group
          groups="sudo"
          password={{ password }}
          comment="Comment"

Und der Benutzer wurde zur Sudo-Gruppe hinzugefügt.

Antwort2

- name: Create Deploy user
  user: name={{ deploy }} comment="Deploy User" groups="sudo,admin,{{ deploy }}"
  sudo: yes

Achten Sie auf Leerzeichen in Ihrer Gruppenliste. Wenn diese vorhanden sind, wird die Meldung „Gruppe existiert nicht“ angezeigt.

Antwort3

groups="admin" erstellt Benutzerzusätze in Administratorgruppen

Antwort4

Um es auf traditionelle Linux-Art mit Ansible zu machen :)

Erstellen Sie eine Datei create_user.ymlund fügen Sie den folgenden Code hinzu.
Ersetzen Sie ihn <username>durch den Benutzernamen, den Sie zur Sudo-Gruppe hinzufügen möchten.

- name: "run command"
  become: true
  gather_facts: no
  hosts: all
  tasks:
    - name: add user to sudo group
      shell: usermod -aG sudo <username>
      args:
        executable: /bin/bash

Führen Sie nun dieses Playbook user_create.yml mit dem Befehl aus

ansible-playbook -K <filename>.yml

verwandte Informationen