126 lines
2.7 KiB
YAML
126 lines
2.7 KiB
YAML
# here we assume that postfix.yml has run such that user 'mailstore' exists
|
|
|
|
- name: install dovecot packages
|
|
apt:
|
|
name: dovecot-imapd,dovecot-lmtpd,dovecot-pgsql,dovecot-managesieved,dovecot-lucene
|
|
state: present
|
|
|
|
- name: install dovecot config files
|
|
template:
|
|
src: "dovecot/{{ item }}"
|
|
dest: "/etc/dovecot/conf.d/{{ item }}"
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
force: yes
|
|
loop:
|
|
- 10-auth.conf
|
|
- auth-sql.conf.ext
|
|
- 10-mail.conf
|
|
- 10-master.conf
|
|
- 10-ssl.conf
|
|
- 15-mailboxes.conf
|
|
- 20-lmtp.conf
|
|
- 20-imap.conf
|
|
- 90-sieve.conf
|
|
- 90-sieve-extprograms.conf
|
|
- 90-plugin.conf
|
|
- 90-acl.conf
|
|
- 90-quota.conf
|
|
|
|
- name: install more dovecot config files
|
|
template:
|
|
src: "dovecot/{{ item }}"
|
|
dest: "/etc/dovecot/{{ item }}"
|
|
owner: root
|
|
group: dovecot
|
|
mode: 0640
|
|
force: yes
|
|
loop:
|
|
- dovecot.conf
|
|
- dovecot-sql.conf.ext
|
|
- dovecot-dict-sql.conf.ext
|
|
|
|
- name: directories /etc/dovecot/sieve_before /etc/dovecot/sieve_after
|
|
file:
|
|
path: "/etc/dovecot/{{ item }}"
|
|
state: directory
|
|
owner: root
|
|
group: root
|
|
mode: 0755
|
|
loop:
|
|
- sieve_pipes
|
|
- sieve_filters
|
|
- sieve_execute
|
|
- sieve_before
|
|
- sieve_after
|
|
|
|
- name: file /etc/dovecot/sieve_after/spam-to-folder.sieve
|
|
template:
|
|
src: dovecot/spam-to-folder.sieve
|
|
dest: /etc/dovecot/sieve_after/spam-to-folder.sieve
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
force: yes
|
|
|
|
- name: files /etc/dovecot/sieve_pipes/*.sieve
|
|
template:
|
|
src: "dovecot/{{ item }}"
|
|
dest: "/etc/dovecot/sieve_pipes/{{ item }}"
|
|
owner: mailstore
|
|
group: mailstore
|
|
mode: 0600
|
|
force: yes
|
|
loop:
|
|
- learn-spam.sieve
|
|
- learn-ham.sieve
|
|
|
|
- name: files /etc/dovecot/sieve_pipes/*.sh
|
|
template:
|
|
src: "dovecot/{{ item }}"
|
|
dest: "/etc/dovecot/sieve_pipes/{{ item }}"
|
|
owner: mailstore
|
|
group: mailstore
|
|
mode: 0700
|
|
force: yes
|
|
loop:
|
|
- rspamd-learn-spam.sh
|
|
- rspamd-learn-ham.sh
|
|
|
|
- name: README files
|
|
template:
|
|
src: "dovecot/README_{{ item }}"
|
|
dest: "/etc/dovecot/sieve_{{ item }}/README"
|
|
owner: mailstore
|
|
group: mailstore
|
|
mode: 0600
|
|
force: yes
|
|
loop:
|
|
- filters
|
|
- execute
|
|
- before
|
|
- after
|
|
|
|
- name: restart dovecot
|
|
systemd:
|
|
name: dovecot
|
|
state: restarted
|
|
|
|
- name: compile sieve files
|
|
shell: "/usr/bin/sievec /etc/dovecot/{{ item }}"
|
|
loop:
|
|
- "sieve_after/spam-to-folder.sieve"
|
|
- "sieve_pipes/learn-spam.sieve"
|
|
- "sieve_pipes/learn-ham.sieve"
|
|
|
|
- name: permissions of .svbin
|
|
file:
|
|
path: "/etc/dovecot/{{ item }}"
|
|
owner: mailstore
|
|
group: mailstore
|
|
mode: 0600
|
|
loop:
|
|
- "sieve_after/spam-to-folder.sieve"
|
|
- "sieve_pipes/learn-spam.svbin"
|
|
- "sieve_pipes/learn-ham.svbin"
|