No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

dovecot.yml 2.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. - name: Install Dovecot and related packages
  2. apt: pkg={{ item }} update_cache=yes state=installed
  3. with_items:
  4. - dovecot-core
  5. - dovecot-imapd
  6. - dovecot-lmtpd
  7. - dovecot-managesieved
  8. - dovecot-pgsql
  9. - dovecot-pop3d
  10. tags:
  11. - dependencies
  12. - name: Install Postgres for Dovecot
  13. apt: pkg=postgresql state=present
  14. tags:
  15. - dependencies
  16. - name: Create vmail group
  17. group: name=vmail state=present gid=5000
  18. - name: Create vmail user
  19. user: name=vmail group=vmail state=present uid=5000 home=/decrypted shell=/usr/sbin/nologin
  20. - name: Ensure mail domain directories are in place
  21. file: state=directory path=/decrypted/{{ item.name }} owner=vmail group=dovecot mode=0770
  22. with_items: mail_virtual_domains
  23. - name: Ensure mail directories are in place
  24. file: state=directory path=/decrypted/{{ item.domain }}/{{ item.account }} owner=vmail group=dovecot
  25. with_items: mail_virtual_users
  26. - name: Copy dovecot.conf into place
  27. copy: src=etc_dovecot_dovecot.conf dest=/etc/dovecot/dovecot.conf
  28. - name: Copy additional Dovecot configuration files in place
  29. copy: src=etc_dovecot_conf.d_{{ item }} dest=/etc/dovecot/conf.d/{{ item }}
  30. with_items:
  31. - 10-auth.conf
  32. - 10-mail.conf
  33. - 10-master.conf
  34. - auth-sql.conf.ext
  35. notify: restart dovecot
  36. - name: Template 10-ssl.conf
  37. template: src=etc_dovecot_conf.d_10-ssl.conf.j2 dest=/etc/dovecot/conf.d/10-ssl.conf
  38. notify: restart dovecot
  39. - name: Template 15-lda.conf
  40. template: src=etc_dovecot_conf.d_15-lda.conf.j2 dest=/etc/dovecot/conf.d/15-lda.conf
  41. notify: restart dovecot
  42. - name: Template dovecot-sql.conf.ext
  43. template: src=etc_dovecot_dovecot-sql.conf.ext.j2 dest=/etc/dovecot/dovecot-sql.conf.ext
  44. notify: restart dovecot
  45. - name: Ensure correct permissions on Dovecot config directory
  46. file: state=directory path=/etc/dovecot
  47. group=dovecot owner=vmail mode=0770 recurse=yes
  48. notify: restart dovecot
  49. - name: Set firewall rules for dovecot
  50. ufw: rule=allow port={{ item }} proto=tcp
  51. with_items:
  52. - imaps
  53. - pop3s
  54. tags: ufw
  55. - name: Update post-certificate-renewal task
  56. copy:
  57. content: "#!/bin/bash\n\nservice dovecot restart\n"
  58. dest: /etc/letsencrypt/postrenew/dovecot.sh
  59. mode: 0755
  60. owner: root
  61. group: root