AsavarTzeth.users

Build Status

Ansible Benutzerrolle - ansible-role-users

Ansible-Rolle zur Verwaltung von Benutzern, Gruppen, SSH autorisierten Schlüsseln und Sudo.

Das Konfigurationsformat dieser Rolle ist stark inspiriert von dem Format, das mit cloud-init/cloud config verwendet wird. Das Ziel ist es, die gleiche oder eine ähnliche YAML-Struktur zu verwenden, wo immer möglich, sie gegebenenfalls jedoch dort zu erweitern, wo es sinnvoll ist.

Einige kleine bemerkenswerte Unterschiede:

  • Alle Bindestriche mussten durch Unterstriche ersetzt werden; aufgrund der Art, wie Ansible Variablennamen interpretiert.

Für weitere Informationen zu cloud-init siehe die cloud-init-Dokumentation unter:
https://cloudinit.readthedocs.io/en/latest/index.html

Anforderungen

Diese Rolle wurde auf Ansible 2.2.0 und höher entwickelt und getestet. Sie könnte auch in niedrigeren Versionen funktionieren, wird jedoch derzeit nicht unterstützt.

Rollenvariablen

Liste der Variablen und Standardwerte:

# Die Standardbenutzershell, die bei der Benutzererstellung verwendet wird.
users_default_shell: /bin/bash

# Legt fest, ob die Rolle eine Primärgruppe erstellen soll, falls diese nicht existiert. 
# Um zu verhindern, dass die Rolle fehlschlägt, ist dies standardmäßig auf true gesetzt. 
# Deaktivieren Sie dies, wenn Gruppen anderswo verwaltet werden.
users_create_primary_group: true

# Ermöglicht die Verwaltung der Berechtigungserhöhung über sudo.
# Deaktivieren Sie dies, wenn sudo nicht verwendet wird oder anderswo verwaltet wird.
users_enable_sudo: true

# Der einzige obligatorische Parameter ist der Name.
users:
  - name: ''                           # Der Benutzername des Benutzers.
    gecos: ''                          # Das Kommentarfeld, auch bekannt und verwendet für den echten Namen des Benutzers.
    homedir: ''                        # Das Home-Verzeichnis des Benutzers.
    primary_group: ''                  # Die primäre Benutzergruppe.
    groups: []                         # Eine Liste von zusätzlichen Gruppen für den Benutzer.
    no_create_home: false              # Wenn true, wird kein Home-Verzeichnis erstellt. Standardmäßig true, wenn `system: true`.
    shell: "{{ users_default_shell }}" # Die Standardbenutzershell.
    passwd: ''                         # Ein SHA512 gehashter und gesalzener Passwort.
    ssh_authorized_keys: []            # Eine Liste von SSH-öffentlichen Schlüsseln, die zur autorisierten_keys Datei hinzugefügt werden sollen.
    sudo: ''                           # Der Sudo-String, der zur Konfiguration von Sudo verwendet wird.
    system: false                      # Wenn true, ist der Benutzer ein Systembenutzer. Dies hat keinen Einfluss auf vorhandene Benutzer.

Abhängigkeiten

Keine

Beispiel-Playbook

Einen Benutzer hinzufügen oder ändern und Sudo sowie SSH autorisierte Schlüssel einrichten:

- hosts: all
  roles:
    - role: AsavarTzeth.users
      users_default_shell: /bin/bash
      users_create_primary_group: true
      users_enable_sudo: true
      users:
        - name: foobar1
          gecos: Foo B. Bar
          primary_group: foobar1
          groups: ['users','wheel']
          shell: /bin/bash
          ssh_authorized_keys:
            - "ssh-rsa AAAAA.... foo@host"
            - "ssh-rsa AAAAB.... bar@host"
          sudo: ALL=(ALL) ALL

Einen Systembenutzer hinzufügen oder ändern:

- hosts: all
  roles:
    - role: AsavarTzeth.users
      users:
        - name: foobar2
          gecos: FooBar Service Account
          homedir: /
          primary_group: foobar
          shell: /sbin/nologin
          system: true

Benutzer löschen:

- hosts: all
  roles:
    - role: AsavarTzeth.users
      users_deleted:
        - name: foobar1
        - name: foobar2

Ein Benutzerpasswort ändern:

- hosts: all
  roles:
    - role: AsavarTzeth.users
      users:
        - name: foobar1
          passwd: $6$mI3A2y4O.YfqhlPt$szsWfnICXsYLbsIghLauJG.I3enLYGDPBYO1DYTHn9gB6y3Q2faM7iqievJlU5ZMTT9X3wHrUv0c7HWkToGBp/

Lizenz

BSD-2-Klausel

Autoreninformationen

Patrik Nilsson

Installieren
ansible-galaxy install AsavarTzeth.users
GitHub Repository
Lizenz
bsd-2-clause
Downloads
501
Besitzer