l3d.auth

Ansible Galaxy MIT-Lizenz

Ansible Rolle Auth

Ansible Rolle zur Verwaltung und Bereitstellung von SSH-Schlüsseln für Administratoren und nicht-Administratoren

geplanter Einsatz

Diese Rolle ist dafür ausgelegt, Linux-Hosts mit den folgenden Rollen zu verwalten. Diese Rolle konzentriert sich hauptsächlich auf die Bereitstellung der korrekten SSH-öffentlichen Schlüssel für die entsprechenden Benutzer entsprechend der Konfiguration. Andere Rollen erstellen Benutzer und Gruppen, konfigurieren SSHD, stellen Dotfiles bereit oder installieren eine Reihe nützlicher Pakete.

Eine Liste empfohlener Rollen zur Verwaltung Ihres Linux-Hosts:

Gut zu wissen:

Die aufgeführten Rollen verwenden dieselben Variablen, um Konten, Administratoren usw. zu erstellen. Aber die Rollen müssen in der richtigen Reihenfolge ausgeführt werden, um ordnungsgemäß zu funktionieren. Zum Beispiel können Sie keinen SSH-öffentlichen Schlüssel für einen Benutzer bereitstellen, der noch nicht erstellt wurde.

Variablen

  • admins (Standard []):
    Eine Liste von ssh-Schlüsseln, die als root anmelden dürfen.

  • accounts (Standard []):
    Eine Liste von Benutzernamen, die auf diesem Host erstellt werden, wenn sie nicht existieren.

  • users (Standard {}):
    Ein Wörterbuch von Benutzernamen, das auf Listen von ssh-Schlüsseln verweist, die für das jeweilige Benutzerkonto zur Anmeldung berechtigt sind.

  • ssh_public_key_store (Standard ssh_public_keys):
    Ein Verzeichnispfad, wo die öffentlichen Schlüsseldateien von Ansible gefunden werden können.

Für zusätzliche Variablen bitte in defaults/main.yml nachsehen!

Um zusätzliche SSH-Schlüssel von GitHub zu einem Benutzer hinzuzufügen, verwenden Sie die Einstellungen github_users: {}.

Dateien

Diese Rolle geht davon aus, dass die öffentlichen Teile aller benötigten ssh-Schlüssel im Verzeichnis ssh_public_key_store zu finden sind. Die Dateinamen müssen folgendes Format haben: benutzername_idalg.pub, was dem benutzername-Teil entspricht.

Beispiele

Alice und Bob dürfen sich anmelden und mit dem Befehl sudo zum root werden:

admins:
  - alice
  - bob

Alice, Bob und Eve können sich über SSH in ihre eigenen Benutzerkonten einloggen:

users:
  alice:
    - alice
  eve:
    - eve@device1
    - eve@device2

Eve kann dies mit zwei unterschiedlichen ssh-Schlüsseln tun. Alice nur mit ihrem einzigen SSH-Schlüssel.

Der files/ssh_public_keys/ enthält die folgenden Dateien:

alice_ed25519.pub
bob_ed25519.pub
eve@device1_ed25519.pub
eve@device2_ed25519.pub

Alice, Bob und Eve möchten Benutzer auf diesem Host sein:

accounts:
  - alice
  - bob
  - eve

SSH-Schlüssel vom GitHub-Benutzer DO1JLR für den lokalen Benutzer L3D hinzufügen:

github_users:
  l3d:
    - do1jlr

Erzeugen von ed25519 SSH-Schlüsseln

ssh-keygen -t ed25519
Über das Projekt

Ansible Rolle to manage and deploy ssh keys of admin and non-admin users

Installieren
ansible-galaxy install l3d.auth
GitHub Repository
Lizenz
mit
Downloads
287
Besitzer
Ansible roles provide a framework for fully independent, or interdependent collections of variables,tasks,files,templates &modules. Here we maintain some. enjoy