ansible-roles/proftpd/tasks/main.yml
David Prevot fc692cf65b
All checks were successful
gitea/ansible-roles/pipeline/head This commit looks good
Allow more --check runs
Use “when: not ansible_check_mode” or “when <file>.stat.exists or not
ansible_check_mode” in order to provide a meaningful diff if possible.

This is an improvement from the previously reverted commit
1728eaee68.
2022-12-21 18:05:41 +01:00

100 lines
2 KiB
YAML

---
- name: package is installed
apt:
name: proftpd-basic
state: present
tags:
- proftpd
- packages
- name: ftpusers groupe exists
group:
name: ftpusers
state: present
notify: restart proftpd
tags:
- proftpd
- name: FTP jail is installed
template:
src: evolinux.conf.j2
dest: /etc/proftpd/conf.d/z-evolinux.conf
mode: "0644"
force: "{{ proftpd_ftp_override }}"
notify: restart proftpd
when: proftpd_ftp_enable | bool
tags:
- proftpd
- name: FTPS jail is installed
template:
src: ftps.conf.j2
dest: /etc/proftpd/conf.d/ftps.conf
mode: "0644"
force: "{{ proftpd_ftps_override }}"
notify: restart proftpd
when: proftpd_ftps_enable | bool
tags:
- proftpd
- name: SFTP jail is installed
template:
src: sftp.conf.j2
dest: /etc/proftpd/conf.d/sftp.conf
mode: "0644"
force: "{{ proftpd_sftp_override }}"
notify: restart proftpd
when: proftpd_sftp_enable | bool
tags:
- proftpd
- name: SFTP key folder exists if needed
file:
path: /etc/proftpd/sftp.authorized_keys/
state: directory
mode: "0755"
owner: root
group: root
notify: restart proftpd
when:
- proftpd_sftp_enable | bool
- proftpd_sftp_use_publickeys | bool
tags:
- proftpd
- name: mod_tls_memcache is disabled
replace:
dest: /etc/proftpd/modules.conf
regexp: '^LoadModule mod_tls_memcache.c'
replace: '#LoadModule mod_tls_memcache.c'
notify: restart proftpd
tags:
- proftpd
when: not ansible_check_mode
- name: Put empty vpasswd file if missing
copy:
src: vpasswd
dest: /etc/proftpd/vpasswd
force: no
notify: restart proftpd
tags:
- proftpd
# Why 440? Because should be edited with ftpasswd.
# So, readonly when opened with vim.
# Then readable by group.
- name: Enforce permissions on password file
file:
path: /etc/proftpd/vpasswd
mode: "0440"
owner: root
group: root
notify: restart proftpd
tags:
- proftpd
when: not ansible_check_mode
- include: accounts.yml
when: proftpd_accounts | length > 0