summaryrefslogtreecommitdiffstats
path: root/roles/IMAP-proxy/templates/etc/dovecot
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2016-05-23 00:28:37 +0200
committerGuilhem Moulin <guilhem@fripost.org>2016-05-23 01:07:18 +0200
commit4b59f7a4cfe0f84e2084f01671982b7713a534aa (patch)
treec45803940d32ccd2c1003e311ba28467b9d34a4e /roles/IMAP-proxy/templates/etc/dovecot
parent7525e4c5dedea932491c80c3a5b597435a1e351f (diff)
Dovecot imapc: don't hardcode the master IMAP server's IP.
Diffstat (limited to 'roles/IMAP-proxy/templates/etc/dovecot')
-rw-r--r--roles/IMAP-proxy/templates/etc/dovecot/conf.d/20-imapc.conf.j218
-rw-r--r--roles/IMAP-proxy/templates/etc/dovecot/conf.d/auth-imap.conf.ext.j217
2 files changed, 35 insertions, 0 deletions
diff --git a/roles/IMAP-proxy/templates/etc/dovecot/conf.d/20-imapc.conf.j2 b/roles/IMAP-proxy/templates/etc/dovecot/conf.d/20-imapc.conf.j2
new file mode 100644
index 0000000..39dbbd6
--- /dev/null
+++ b/roles/IMAP-proxy/templates/etc/dovecot/conf.d/20-imapc.conf.j2
@@ -0,0 +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 = {{ 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 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/templates/etc/dovecot/conf.d/auth-imap.conf.ext.j2 b/roles/IMAP-proxy/templates/etc/dovecot/conf.d/auth-imap.conf.ext.j2
new file mode 100644
index 0000000..30b8d7f
--- /dev/null
+++ b/roles/IMAP-proxy/templates/etc/dovecot/conf.d/auth-imap.conf.ext.j2
@@ -0,0 +1,17 @@
+# Authentication via remote IMAP server. Included from auth.conf.
+#
+# <doc/wiki/PasswordDatabase.IMAP.txt>
+
+passdb {
+ driver = imap
+ 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
+}