sansible.users_and_groups

Użytkownicy i Role

Master: Status budowy
Rozwój: Status budowy

Ta rola zarządza użytkownikami i grupami w systemie operacyjnym.

Instalacja i Zależności

Ta rola nie ma żadnych zależności.

Aby zainstalować, uruchom ansible-galaxy install sansible.users_and_groups lub dodaj to do swojego roles.yml

- name: sansible.users_and_groups
  version: v2.0

a następnie uruchom ansible-galaxy install -p ./roles -r roles.yml

Tagi

Ta rola używa dwóch tagów: build i maintain

  • build - Zapewnia, że określone grupy i użytkownicy są obecni.
  • maintain - Zapewnia, że użytkownicy są na już zbudowanej i skonfigurowanej instancji.

Przykłady

Prosty przykład tworzenia dwóch użytkowników i dwóch grup.

- name: Konfiguracja dostępu użytkownika
  hosts: sandbox

  roles:
    - name: sansible.users_and_groups
      sansible_users_and_groups_groups:
        - name: lorem
          system: yes
        - name: ipsum
      sansible_users_and_groups_users:
        - name: lorem.ipsum
          groups:
            - ipsum
            - lorem
          ssh_key: ./lorem.ipsum.pub
        - name: dolor.ament
          groups:
            - ipsum

Tworzenie użytkownika z ograniczonym dostępem SFTP (zobacz tutaj dla przewodnika krok po kroku):

- name: Konfiguracja dostępu użytkownika
  hosts: sandbox

  roles:
    - name: sansible.users_and_groups
      sansible_users_and_groups_authorized_keys_dir: /etc/ssh/authorized_keys
      sansible_users_and_groups_groups:
        - name: sftp_only
      sansible_users_and_groups_users:
        - name: sftp
          group: sftp_only
          home: /mnt/sftp_vol

W większości przypadków warto trzymać listę użytkowników w zewnętrznym pliku zmiennych lub pliku zmiennych grupy/gospodarza.

- name: Konfiguracja dostępu użytkownika
  hosts: sandbox

  vars_files:
    - "vars/sandbox/users.yml"

  roles:
    - name: sansible.users_and_groups
      sansible_users_and_groups_groups: "{{ base_image.os_groups }}"
      sansible_users_and_groups_users: "{{ base_image.admins }}"

    - name: sansible.users_and_groups
      sansible_users_and_groups_users: "{{ developers }}"

Dodaj wybraną grupę do sudoers

- name: Konfiguracja dostępu użytkownika
  hosts: sandbox

  vars_files:
    - "vars/sandbox/users.yml"

  roles:
    - name: sansible.users_and_groups
      sansible_users_and_groups_groups: "{{ base_image.os_groups }}"
      sansible_users_and_groups_users: "{{ base_image.admins }}"

    - name: sansible.users_and_groups
      sansible_users_and_groups_users: "{{ developers }}"

    - name: sansible.users_and_groups
      sansible_users_and_groups_sudoers:
        - name: wheel
          user: "%wheel"
          runas: "ALL=(ALL)"
          commands: "NOPASSWD: ALL"

Użyj opcji białej listy grup, aby pozwolić użytkownikom na dostęp kontekstowy.

Plik zmiennych z użytkownikami:

---

# vars/users.yml

sansible_users_and_groups_groups:
  - name: admins
  - name: developer_group_alpha
  - name: developer_group_beta
sansible_users_and_groups_users:
  - name: admin.user
    group: admins
  - name: alpha.user
    group: alpha_develops
  - name: beta.user
    group: developer_group_beta

W obrazie bazowym:

---

# playbooks/base_image.yml

- name: Obraz bazowy
  hosts: "{{ hosts }}"

  vars_files:
    - vars/users.yml

  roles:
    - role: sansible.users_and_groups
      sansible_users_and_groups_whitelist_groups:
        - admins

    - role: base_image

W roli usługi:

---

# playbooks/alpha_service.yml

- name: Usługa Alpha
  hosts: "{{ hosts }}"

  vars_files:
    - vars/users.yml

  roles:
    - role: sansible.users_and_groups
      sansible_users_and_groups_whitelist_groups:
        - admins
        - developer_group_alpha

    - role: alpha_service
O projekcie

Users and Groups Management Made Simple

Zainstaluj
ansible-galaxy install sansible.users_and_groups
Licencja
mit
Pobrania
59.2k
Właściciel
See https://github.com/sansible/sansible for more information