cchurch.admin-users
Użytkownicy administracyjni
Zarządzaj użytkownikami administracyjnymi, kluczami autoryzacyjnymi i dostępem sudo.
Wsparcie dla wersji Ansible < 2.8 zostało usunięte od wersji 0.9.0.
Wymagania
Pakiet sudo
zostanie zainstalowany, jeśli nie jest już zainstalowany. Amazon Linux wymaga także
zainstalowania pakietu shadow-utils
przed uruchomieniem tej roli.
Zmienne roli
Poniższe zmienne mogą być zdefiniowane w celu dostosowania tej roli:
admin_users
: Lista użytkowników administracyjnych do utworzenia lub zaktualizowania; domyślnie[]
. Każdy element tej listy powinien być hashem z następującymi kluczami:username
: Nazwa użytkownika administracyjnego (wymagana).fullname
: Pełne imię i nazwisko użytkownika administracyjnego (opcjonalne).shell
: Domyślny powłoka dla tego użytkownika; jeśli ten klucz zostanie pominięty, użyta zostanieadmin_users_default_shell
.pubkey
: Klucz publiczny do powiązania z danym użytkownikiem. Ta wartość może być ciągiem zawierającym treść klucza publicznego użytkownika, ciągiem zawierającym adres URL do listy kluczy (np. https://github.com/username.keys), lub listą wielu ciągów zawierających albo treść klucza publicznego, albo adresy URL. Wsparcie dla list kluczy zostało dodane w 0.7.0.pubkey_options
: Dodatkowe opcje do przekazania do modułuauthorized_key
(opcjonalne).exclusive
: Wartość boolean wskazująca, czy usunąć wszystkie inne klucze publiczne (opcjonalne).
admin_user_groups
: Wartość boolean wskazująca, czy utworzyć/usunąć; domyślnietrue
.admin_users_sudo_nopasswd
: Wartość boolean wskazująca, czy włączyć sudo z opcjąNOPASSWD
dla użytkowników administracyjnych; domyślnietrue
.admin_users_default_shell
: Domyślna powłoka dla użytkowników administracyjnych; domyślnie"/bin/bash"
.admin_users_to_remove
: Lista nazw użytkowników do usunięcia z systemu zdalnego; domyślnie[]
. Jeśliadmin_user_groups
jesttrue
, grupy z tymi nazwami użytkowników również zostaną usunięte.
Zależności
Brak.
Przykładowy playbook
Poniższy playbook aktualizuje użytkowników administracyjnych na serwerach dev i prod z różnymi opcjami:
- 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
Licencja
BSD
Informacje o autorze
Chris Church (cchurch)
ansible-galaxy install cchurch.admin-users