diff options
Diffstat (limited to 'roles')
-rw-r--r-- | roles/IMAP-proxy/tasks/main.yml | 14 | ||||
-rw-r--r-- | roles/IMAP-proxy/templates/etc/dovecot/conf.d/20-imapc.conf.j2 (renamed from roles/IMAP-proxy/files/etc/dovecot/conf.d/20-imapc.conf) | 9 | ||||
-rw-r--r-- | roles/IMAP-proxy/templates/etc/dovecot/conf.d/auth-imap.conf.ext.j2 (renamed from roles/IMAP-proxy/files/etc/dovecot/conf.d/auth-imap.conf.ext) | 2 |
3 files changed, 18 insertions, 7 deletions
diff --git a/roles/IMAP-proxy/tasks/main.yml b/roles/IMAP-proxy/tasks/main.yml index 579fc7e..93a5181 100644 --- a/roles/IMAP-proxy/tasks/main.yml +++ b/roles/IMAP-proxy/tasks/main.yml @@ -7,55 +7,65 @@ - name: Create a user 'imapproxy' user: name=imapproxy system=yes createhome=no home=/var/lib/imapproxy shell=/usr/sbin/nologin password=! state=present - name: Create a home directory for user 'imapproxy' file: path=/var/lib/imapproxy state=directory owner=imapproxy group=imapproxy mode=0700 - name: Configure Dovecot copy: src=etc/dovecot/conf.d/{{ item }} dest=/etc/dovecot/conf.d/{{ item }} owner=root group=root mode=0644 - register: r + register: r1 with_items: - 10-auth.conf - 10-logging.conf - 10-mail.conf - 10-master.conf - 15-mailboxes.conf + notify: + - Restart Dovecot + +- name: Configure Dovecot (2) + template: src=etc/dovecot/conf.d/{{ item }}.j2 + dest=/etc/dovecot/conf.d/{{ item }} + owner=root group=root + mode=0644 + register: r2 + with_items: - 20-imapc.conf - auth-imap.conf.ext notify: - Restart Dovecot - name: Start Dovecot service: name=dovecot state=started - when: not r.changed + when: not (r1.changed or r2.changed) - meta: flush_handlers - name: Create /etc/stunnel/certs file: path=/etc/stunnel/certs state=directory owner=root group=root mode=0755 - name: Copy Dovecot's X.509 certificate copy: src=certs/public/imap.fripost.org.pem dest=/etc/stunnel/certs/imap.fripost.org.pem owner=root group=root mode=0644 register: r1 notify: - Restart stunnel@roundcube - name: Copy slapd's X.509 certificate diff --git a/roles/IMAP-proxy/files/etc/dovecot/conf.d/20-imapc.conf b/roles/IMAP-proxy/templates/etc/dovecot/conf.d/20-imapc.conf.j2 index 4c1cf8f..39dbbd6 100644 --- a/roles/IMAP-proxy/files/etc/dovecot/conf.d/20-imapc.conf +++ b/roles/IMAP-proxy/templates/etc/dovecot/conf.d/20-imapc.conf.j2 @@ -1,17 +1,18 @@ # Smart IMAP proxying with imapc storage # # http://dovecot.org/pipermail/dovecot/2011-January/056975.html # http://wiki2.dovecot.org/HowTo/ImapcProxy +# http://wiki2.dovecot.org/MailboxFormat/imapc # http://wiki2.dovecot.org/Migration/Dsync -imapc_host = localhost -imapc_port = 993 +imapc_host = {{ ipsec[imapsvr.inventory_hostname_short] }} +imapc_port = 143 # Read multiple mails in parallel, improves performance mail_prefetch_count = 25 -# The list of valid features can be found there -# http://hg.dovecot.org/dovecot-2.2/file/tip/src/lib-storage/index/imapc/imapc-settings.c +# The list of valid features can be found at +# https://github.com/dovecot/core/blob/master/src/lib-storage/index/imapc/imapc-settings.c # (in the struct 'imapc_feature_list imapc_feature_list') imapc_features = rfc822.size fetch-headers #imapc_features = rfc822.size fetch-headers search diff --git a/roles/IMAP-proxy/files/etc/dovecot/conf.d/auth-imap.conf.ext b/roles/IMAP-proxy/templates/etc/dovecot/conf.d/auth-imap.conf.ext.j2 index ced2f80..30b8d7f 100644 --- a/roles/IMAP-proxy/files/etc/dovecot/conf.d/auth-imap.conf.ext +++ b/roles/IMAP-proxy/templates/etc/dovecot/conf.d/auth-imap.conf.ext.j2 @@ -1,17 +1,17 @@ # Authentication via remote IMAP server. Included from auth.conf. # # <doc/wiki/PasswordDatabase.IMAP.txt> passdb { driver = imap - args = host=localhost port=993 + args = host={{ ipsec[imapsvr.inventory_hostname_short] }} port=143 default_fields = userdb_imapc_password=%w } # "prefetch" user database means that the passdb already provided the # needed information and there's no need to do a separate userdb lookup. # <doc/wiki/UserDatabase.Prefetch.txt> userdb { driver = prefetch default_fields = home=/var/lib/imapproxy/%d/%n } |