From 4e760bf5ea954621f8c495d510faa23bf6aaae05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Todor=20Kondi=C4=87?= <todor.kondic@uni.lu> Date: Wed, 16 Mar 2022 09:22:10 +0100 Subject: [PATCH] Ftp server users, homes and HTTP connection work. --- group_vars/stations/eci_users.yml | 5 ++--- roles/base/tasks/main.yml | 17 ++++++++++++++--- roles/ftpserver/tasks/main.yml | 5 +++-- 3 files changed, 19 insertions(+), 8 deletions(-) diff --git a/group_vars/stations/eci_users.yml b/group_vars/stations/eci_users.yml index eb985df..652d5a8 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 89cd89e..9eb5f9c 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 5db9b9a..149465e 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: | -- GitLab