cans.ssh-authorize
cans.ssh-authorize
Eine einfache Rolle zur Einrichtung der SSH-Autorisierung für Benutzerkonten in großen Mengen.
Gegeben ist ein Verzeichnis (standardmäßig public_keys
), das eine Reihe von Dateien enthält, die jeweils einen öffentlichen Schlüssel enthalten. Diese Dateien werden zusammengeführt, um die Datei ~/.ssh/authorized_keys
im Benutzerkonto auf dem Remote-Server zu erstellen.
Die tatsächliche Datei, die erstellt wird, hängt von mehreren Variablen ab:
"{{sshauthz_homes_dir}}/{{sshauthz_user}}/{{sshauthz_ssh_config_dirname}}/{{sshauthz_authorized_keys_filename}}"
Dies ermöglicht eine ziemlich spezifische Konfiguration, falls erforderlich. Aber natürlich sollten die Standardwerte für diese Variablen für die meisten Setups anwendbar sein.
Hinweis: Da diese Rolle auf recht direkte Weise arbeitet, um Effizienz zu gewährleisten und zu vermeiden, dass Sie sich aus dem System aussperren, bietet diese Rolle einen Mechanismus, um zu überprüfen, ob Ihr Schlüssel im Quellverzeichnis vorhanden ist.
Anforderungen
Diese Rolle hat keine besonderen Anforderungen.
Rollenvariablen
Standardwerte
- `sshauthz_homes_dir: Basisverzeichnis für Benutzerkonten auf dem Remote-Host (Standard: "/home")
sshauthz_user
: Das Remote-Konto, für das Autorisierungen gesetzt werden (Standard: "{{ansible_user_id}}")sshauthz_ssh_config_dirname
: (Standard: ".ssh")sshauthz_authorized_keys_filename
: Name der Autorisierungsdatei auf dem Remote-Host (Standard: "authorized_keys")sshauthz_keys_directory
: Verzeichnis, in dem die Schlüssel zur Autorisierung auf dem Remote-Konto gefunden werden (Standard: "{{ playbook_dir + '/files/public_keys/default' }}")
Abhängigkeiten
Diese Rolle hat keine Abhängigkeiten.
Beispiel-Playbook
- hosts: etl, proxy
roles:
- { role: ssh-access, sshauthz_user: remus }
- { role: ssh-access, sshauthz_user: romolus, sshauthz_keys_directory: '~/public_keys' }
Lizenz
GPLv2
Autoreninformation
Copyright © 2017, Nicolas CANIART.
ansible-galaxy install cans.ssh-authorize