GROG.authorized-key

Autorisierte Schlüssel

Ansible Galaxy Build-Status Neuester Tag Gitter-Chat

Eine Rolle zum Verwalten autorisierter Schlüssel.

Die folgenden Rollen wurden entwickelt, um gut mit dieser Rolle zusammenzuarbeiten:

  • user, zur Verwaltung von Benutzern.
  • sudo, zur Verwaltung von Sudo-Rechten.

Die Rolle management-user kombiniert all diese Rollen in einer benutzerfreundlichen Rolle.

Anforderungen

  • Hosts müssen für die Verwendung mit Ansible vorbereitet sein (Python, ...)
  • Root-Rechte, z.B. become: yes

Rollenvariablen

Variable Beschreibung Standardwert
authorized_key_list Liste von Benutzern und deren Schlüsseln (Details siehe!) []
authorized_key_list_host Liste von Benutzern und deren Schlüsseln (Details siehe!) []
authorized_key_list_group Liste von Benutzern und deren Schlüsseln (Details siehe!) []
authorized_key_exclusive Standardwert für exclusive nein
authorized_key_key_options Standardwert für key_options /
authorized_key_manage_dir Standardwert für manage_dir ja
authorized_key_state Standardwert für state vorhanden

Details zu authorized_key_list

authorized_key_list, authorized_key_list_host und authorized_key_list_group werden zusammengeführt, wenn die autorisierten Schlüssel verwaltet werden. Sie können die Host- und Gruppenlisten verwenden, um Schlüssel pro Host oder Gruppenzuweisung zu spezifizieren.

Die Liste der autorisierten Schlüssel ermöglicht es Ihnen, zu definieren, welche Benutzer und ihre Schlüssel... verwalten werden sollen. Jeder Eintrag in der Liste besteht aus einem Benutzernamen und einer Liste von Schlüsseln.

Variable Beschreibung Standard
name Benutzername /
authorized_keys Liste von Schlüsseln /

Jeder Schlüssel in der Liste authorized_keys kann folgende Attribute haben:

Variable Beschreibung Erforderlich Standard
exclusive Soll dieser Schlüssel exklusiv sein? nein authorized_key_exclusive
key SSH-Schlüssel ja /
key_options SSH-Schlüsseloptionen, die dem Schlüssel vorangestellt werden nein /
manage_dir Verwalte das Verzeichnis authorized_keys? nein authorized_key_manage_dir
path Pfad für den SSH-Schlüssel nein 'home_dir/.ssh/authorized_keys'
state Zustand des Schlüssels (vorhanden/nicht vorhanden) nein authorized_key_state
Beispiel authorized_key_list
authorized_key_list:
  - name: testuser1
    authorized_keys:
      - key: "{{ lookup('file', '/home/charlie/.ssh/id_rsa.pub') }}"
      - key: "{{ lookup('file', '/home/john/.ssh/id_rsa.pub') }}"
        state: absent
  - name: testuser2
    authorized_keys:
      - key: "{{ lookup('file', '/home/charlie/.ssh/id_rsa.pub') }}"

Abhängigkeiten

Keine.

Beispiel-Playbook

---
- hosts: servers
  roles:
  - { role: GROG.authorized-key, become: yes }

In group_vars/servers.yml:

authorized_key_list_group:
  - name: user
    authorized_keys:
      - key: "{{ lookup('file', '/home/charlie/.ssh/id_rsa.pub') }}"
      - key: "{{ lookup('file', '/home/john/.ssh/id_rsa.pub') }}"

Mitwirken

Alle Unterstützung, Änderungen oder Ideen willkommen!

Autor

Von G. Roggemans

Lizenz

MIT

Über das Projekt

A role for managing authorized keys.

Installieren
ansible-galaxy install GROG.authorized-key
Lizenz
mit
Downloads
258.9k
Besitzer
Open Source Science and Technology