cchurch.admin-users

Build Status Galaxy

Admin-Benutzer

Verwalten Sie Admin-Benutzer, autorisierte Schlüssel und Sudo-Zugriff.

Die Unterstützung für Ansible-Versionen < 2.8 wurde ab Version 0.9.0 eingestellt.

Anforderungen

Das Paket sudo wird installiert, wenn es nicht bereits vorhanden ist. Amazon Linux benötigt auch das Paket shadow-utils, das vor dem Ausführen dieser Rolle installiert werden muss.

Rollen-Variablen

Die folgenden Variablen können definiert werden, um diese Rolle anzupassen:

  • admin_users: Liste der zu erstellenden oder zu aktualisierenden Admin-Benutzer; Standard ist []. Jedes Element in dieser Liste sollte ein Hash mit den folgenden Schlüsseln sein:

    • username: Benutzername des Admin-Benutzers (erforderlich).
    • fullname: Vollständiger Name des Admin-Benutzers (optional).
    • shell: Standard-Shell für diesen Benutzer; admin_users_default_shell wird verwendet, wenn dieser Schlüssel weggelassen wird.
    • pubkey: Der öffentliche Schlüssel, der dem angegebenen Benutzer zugeordnet werden soll. Dieser Wert kann ein String sein, der den Inhalt des öffentlichen Schlüssels des Benutzers enthält, ein String, der eine URL zu einer Liste von Schlüsseln enthält (z. B. https://github.com/benutzername.keys) oder eine Liste mehrerer Strings, die entweder den Inhalt des öffentlichen Schlüssels oder URLs enthalten. Die Unterstützung für Listen von Schlüsseln wurde in 0.7.0 hinzugefügt.
    • pubkey_options: Zusätzliche Optionen, die an das Modul authorized_key übergeben werden sollen (optional).
    • exclusive: Boolean, der angibt, ob alle anderen öffentlichen Schlüssel entfernt werden sollen (optional).
  • admin_user_groups: Boolean, der angibt, ob Gruppen erstellt/entfernt werden sollen; Standard ist true.

  • admin_users_sudo_nopasswd: Boolean, der angibt, ob Sudo mit der Option NOPASSWD für Admin-Benutzer aktiviert werden soll; Standard ist true.

  • admin_users_default_shell: Standard-Shell für Admin-Benutzer; Standard ist "/bin/bash".

  • admin_users_to_remove: Liste von Benutzernamen, die vom Remote-System entfernt werden sollen; Standard ist []. Wenn admin_user_groups true ist, werden Gruppen mit diesen Benutzernamen ebenfalls entfernt.

Abhängigkeiten

Keine.

Beispiel-Playbook

Das folgende Playbook aktualisiert Admin-Benutzer auf Entwicklungs- und Produktionsservern mit unterschiedlichen Optionen:

- hosts: dev-servers
  vars:
    dev_admin_users:
      - username: joe
        fullname: "Joe Dev"
        pubkey:
          - "ssh-rsa ..."
          - "ssh-dsa ..."
      - username: jim
        fullname: "Jim Dev"
        shell: "/bin/sh"
        pubkey: "https://github.com/jim.keys"
        exclusive: true
  roles:
    - role: cchurch.admin-users
      admin_users: dev_admin_users
- hosts: prod-servers
  vars:
    prod_admin_users:
      - username: jon
        fullname: "Jon Admin"
        pubkey: "ssh-rsa ..."
  roles:
    - role: cchurch.admin-users
      admin_users: prod_admin_users
      admin_users_sudo_nopasswd: false

Lizenz

BSD

Autoreninformationen

Chris Church (cchurch)

Über das Projekt

Manage admin users, authorized keys and sudo access.

Installieren
ansible-galaxy install cchurch.admin-users
Lizenz
other
Downloads
4k
Besitzer
Python/Django/Ansible, will code for sweet tea and beer.