chasinglogic.ansible_users
ansible-users
Rola do zarządzania użytkownikami w systemie.
To jest fork z singleplatform-eng.users, ponieważ wygląda na to, że nie jest już utrzymywany.
Konfiguracja roli
users_create_per_user_group(domyślnie: true) - przy tworzeniu użytkowników, również twórz grupę o tej samej nazwie co użytkownik i ustaw ją jako główną grupę użytkownika.users_group(domyślnie: users) - jeśliusers_create_per_user_groupnie jest ustawione, to będzie to główna grupa dla wszystkich tworzonych użytkowników.users_default_shell(domyślnie: /bin/bash) - domyślny powłoka, jeśli nie jest podana dla użytkownika.users_create_homedirs(domyślnie: true) - twórz katalogi domowe dla nowych użytkowników. Ustaw to na false, jeśli zarządzasz katalogami domowymi oddzielnie.authorized_keys_file(domyślnie: .ssh/authorized_keys) - Ustaw to, jeśli serwer ssh jest skonfigurowany do używania nie standardowego pliku z dozwolonymi kluczami.
Tworzenie użytkowników
Dodaj zmienną użytkowników zawierającą listę użytkowników do dodania. Dobrym miejscem na to jest group_vars/all lub group_vars/groupname, jeśli chcesz, aby użytkownicy byli tylko na określonych maszynach.
Następujące atrybuty są wymagane dla każdego użytkownika:
username- Nazwa użytkownika.name- Pełna nazwa użytkownika (pole gecos).home- Katalog domowy użytkownika do utworzenia (opcjonalne, domyślnie /home/nazwa_użytkownika).uid- Numeryczny identyfikator użytkownika (opcjonalne). Wymagane dla spójnościuidw systemach.gid- Numeryczny identyfikator grupy (opcjonalne). W przeciwnym razie użyty zostanieuid.password- Jeśli podano hash, będzie on użyty, w przeciwnym razie konto będzie zablokowane.update_password- Może to być 'always' lub 'on_create'- 'always' zaktualizuje hasła, jeśli się różnią. (domyślnie)
- 'on_create' ustawi hasło tylko dla nowo utworzonych użytkowników.
group- Opcjonalne nadpisanie głównej grupy.groups- Lista grup dodatkowych dla użytkownika.append- Jeśli tak, doda tylko grupy, a nie ustawi ich tylko w liście grup (opcjonalne).profile- Blok tekstu do ustawiania niestandardowych profili powłoki.ssh_key- Powinno być listą kluczy SSH dla użytkownika (opcjonalne). Każdy klucz SSH powinien być podany bezpośrednio i nie powinien zawierać nowych linii.generate_ssh_key- Czy generować klucz SSH dla użytkownika (opcjonalne, domyślnie nie).
Dodatkowo następujące atrybuty są opcjonalne dla każdego użytkownika:
shell- Powłoka użytkownika. Domyślnie jest to /bin/bash. Domyślną powłokę można skonfigurować, używając zmiennejusers_default_shell, jeśli chcesz, aby wszyscy użytkownicy mieli tę samą powłokę, ale różni się ona od /bin/bash.
Przykład:
---
users:
- username: foo
name: Foo Barrington
groups: ['wheel','systemd-journal']
uid: 1001
home: /local/home/foo
profile: |
alias ll='ls -lah'
ssh_key:
- "ssh-rsa AAAAA.... foo@machine"
- "ssh-rsa AAAAB.... foo2@machine"
groups_to_create:
- name: developers
gid: 10000
users_deleted:
- username: bar
name: Bar User
uid: 1002
Usuwanie użytkowników
Zmienna users_deleted zawiera listę użytkowników, którzy nie powinni już być w systemie, a ci zostaną usunięci przy następnym uruchomieniu ansible. Format jest taki sam jak dla użytkowników do dodania, ale wymagana jest tylko zmienna username. Zaleca się jednak, aby zachować również pole uid dla odniesienia, aby numeryczne identyfikatory użytkowników przypadkowo nie były ponownie używane.
Możesz opcjonalnie wybrać usunięcie katalogu domowego użytkownika i kolejki pocztowej przy użyciu parametru remove, oraz wymusić usunięcie plików przy użyciu parametru force.
users_deleted:
- username: bar
uid: 1002
remove: yes
force: yes
ansible-galaxy install chasinglogic.ansible_users