diff --git a/group_vars/stations/eci_users.yml b/group_vars/stations/eci_users.yml index eb985df1f96353b585ac4676c6d10ae6fde7f099..652d5a8e4dc304316dfadbd686d328295686c2e8 100644 --- a/group_vars/stations/eci_users.yml +++ b/group_vars/stations/eci_users.yml @@ -3,6 +3,5 @@ eci_users: - testuser2 eci_users_uid: - testuser: 61 - testuser2: 62 - + testuser: 61 + testuser2: 62 diff --git a/roles/base/tasks/main.yml b/roles/base/tasks/main.yml index 89cd89e79c1452828094febd79ce20bfc2c8d9b5..9eb5f9cea37d7c16ecd05a86523c7893b56ec53c 100644 --- a/roles/base/tasks/main.yml +++ b/roles/base/tasks/main.yml @@ -25,17 +25,28 @@ path: /etc/dhcp/dhclient.conf notify: restart-network +- name: Create eci group. + ansible.builtin.group: + name: eci + +- name: Get eci's GID. + ansible.builtin.getent: + database: group + key: eci + - name: Create /eci-users. ansible.builtin.file: - path: /etc/eci-users + path: /eci-users state: directory mode: '0711' - name: Create /eci-users/user. ansible.builtin.file: - path: "/etc/eci-users/{{ item }}" + path: "/eci-users/{{ item }}" state: directory - mode: '0711' + owner: "{{ eci_users_uid[item] }}" + group: eci + mode: '0771' loop: "{{ eci_users }}" diff --git a/roles/ftpserver/tasks/main.yml b/roles/ftpserver/tasks/main.yml index 5db9b9a84333bc3b6fe122a1ebda84ec6989a712..149465e44120a4299735bfdc2c7cce0b0ade95d3 100644 --- a/roles/ftpserver/tasks/main.yml +++ b/roles/ftpserver/tasks/main.yml @@ -9,13 +9,14 @@ mode: 0600 - name: Create FTP users. - debug: - msg: "echo {{ eci_passwords[item] }}|ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name={{item}} --uid={{eci_users_uid[item]}} --home=/udirs/{{item}} --shell=/bin/false --stdin" + shell: + cmd: "echo {{ eci_passwords[item] }}|ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name={{ item }} --uid={{ eci_users_uid[item] }} --gid={{ ansible_facts.getent_group['eci'][1] }} --home=/eci-users/{{item}} --shell=/bin/false --stdin" loop: "{{eci_users}}" notify: restart-ftp - name: Configure ProFTPd for multiple virtual users. + tags: proftpd-conf-text blockinfile: path: /etc/proftpd/proftpd.conf block: |