socketwench.users-and-groups

Ansible Rolle: Benutzer und Gruppen

Erstellt Benutzer und Gruppen für Debian/Ubuntu Linux.

Anforderungen

Keine.

Rollenvariablen

Verfügbare Variablen sind unten aufgeführt, zusammen mit den Standardwerten (siehe defaults/main.yml).

Um einen Benutzer mit allen Standardeinstellungen zu erstellen, dessen Hauptgruppe denselben Namen wie sein Benutzername hat:

server_users:
  - name: "ash"
    password: "imnotarobot"

Gruppen

Es gibt keine separate Gruppenvariable. Sie sind stattdessen Teil der server_users-Variablen.

Um den Namen der Hauptgruppe und alternative Gruppen anzugeben:

server_users:
  - name: "ash"
    password: "imnotarobot"
    group: "hauptgruppenname"
    groups:
      - "eineandergruppe"
      - "mehr-gruppen-hier"

SSH-Schlüssel

Standardmäßig wird für alle von dieser Rolle erstellten Benutzer ein neuer SSH-Schlüssel generiert:

server_users_ssh_key_generate: yes
server_users_ssh_key_bits: "4096"

Dies kann auch pro Benutzer überschrieben werden:

server_users:
  - name: "ash"
    password: "imnotarobot"
    ssh_key_generate: yes
    ssh_key_bits: "4096"

Autorisierte SSH-Schlüssel

Manchmal möchten Sie auch die autorisierten Schlüssel festlegen, damit sich die Benutzer mit öffentlichen Schlüsseln statt mit Passwörtern anmelden können. Um dies für alle Benutzer festzulegen:

server_users_auth_keys: "{{ contents_of_ssh_authorized_keys }}"

Dabei sind die Inhalte der Variablen dieselben wie die ~/.ssh/authorized_keys-Dateien.

Sie können dies auch pro Benutzer überschreiben:

server_users:
  - name: "ash"
    password: "imnotarobot"
    auth_keys: "{{ contents_of_ssh_authorized_keys }}"

Standard-Shell

Die Standard-Shell ist Bash. Um dies für alle Benutzer zu überschreiben:

server_users_shell: "/bin/bash"

Sie können auch eine Shell für einen bestimmten Benutzer angeben. Dies überschreibt die oben genannte Standard-Shell:

server_users:
  - name: "ash"
    password: "imnotarobot"
    shell: "/bin/zsh"

Standardmäßig protokolliert die Rolle keine Aufgabenaktionen aus Sicherheitsgründen. Um das Protokollieren zu aktivieren:

server_users_no_log: true

Ansible-Konfigurationen

Diese Rolle verteilt auch eine .ansible.cfg-Datei an das Home-Verzeichnis jedes Benutzers. Dies ermöglicht es Ihnen, die Standardwerte für role_path und no_cows zu überschreiben:

server_users_ansible_role_path:  "~/.ansible/roles"
server_users_ansible_nocows: 1
server_users_ansible_log: false
server_users_ansible_log_path: '~/ansible.log'

Nochmals, dies kann pro Benutzer gemacht werden:

server_users:
  - name: "ash"
    password: "imnotarobot"
    ansible_role_path: "/etc/ansible/roles"
    ansible_nocows: 0
    ansible_log: true
    ansible_log_path: "/home/ash/logs/ansible.log"

Entfernen und Löschen von Benutzern

Sie können auch Benutzer mit der state-Variablen entfernen:

server_users:
  - name: "ash"
    state: absent

Wenn Sie auch das Home-Verzeichnis löschen möchten, verwenden Sie remove:

server_users:
  - name: "ash"
    state: absent
    remove: yes

Abhängigkeiten

Keine.

Beispiel-Playbook

server_users:
  - name: "ash"
    password: "imnotarobot"
    group: "wy"
    groups:
      - "scidiv"
  - name: "kane"
    password: "ihateeggs"
    shell: "/bin/ksh"
    ssh_key_generate: no

Lizenz

GPL 3.0.

Autorinformation

Diese Rolle wurde 2017 von socketwench erstellt.

Über das Projekt

Creates users and groups for Linux

Installieren
ansible-galaxy install socketwench.users-and-groups
GitHub Repository
Lizenz
gpl-3.0
Downloads
334
Besitzer