summaryrefslogtreecommitdiffstats
path: root/roles/IMAP-proxy/files/etc
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2014-06-25 02:37:48 +0200
committerGuilhem Moulin <guilhem@fripost.org>2015-06-07 02:51:48 +0200
commit2a2333cdfb016bb884887f46fbcbfdce6e064d74 (patch)
treee85d7c802436e3c5615ee8eef2ca9c68cd5eb895 /roles/IMAP-proxy/files/etc
parente9e8ce2add2b7c020daa02228e506e7c02828c15 (diff)
Assume a DNS entry for each role.
E.g., ldap.fripost.org, ntp.fripost.org, etc. (Ideally the DNS zone would be provisioned by ansible, too.) It's a bit unclear how to index the subdomains (mx{1,2,3}, etc), though.
Diffstat (limited to 'roles/IMAP-proxy/files/etc')
-rw-r--r--roles/IMAP-proxy/files/etc/dovecot/conf.d/20-imapc.conf18
-rw-r--r--roles/IMAP-proxy/files/etc/dovecot/conf.d/auth-imap.conf.ext17
2 files changed, 35 insertions, 0 deletions
diff --git a/roles/IMAP-proxy/files/etc/dovecot/conf.d/20-imapc.conf b/roles/IMAP-proxy/files/etc/dovecot/conf.d/20-imapc.conf
new file mode 100644
index 0000000..47785a4
--- /dev/null
+++ b/roles/IMAP-proxy/files/etc/dovecot/conf.d/20-imapc.conf
@@ -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/Migration/Dsync
+
+imapc_host = imap.fripost.org
+imapc_port = 143
+imapc_user = %u
+
+# Read multiple mails in parallel, improves performance
+mail_prefetch_count = 20
+
+# The list of valid features can be found there
+# http://hg.dovecot.org/dovecot-2.1/file/f572fbafb445/src/lib-storage/index/imapc/imapc-settings.c
+# (in the struct 'imapc_feature_list imapc_feature_list')
+imapc_features = rfc822.size
+
diff --git a/roles/IMAP-proxy/files/etc/dovecot/conf.d/auth-imap.conf.ext b/roles/IMAP-proxy/files/etc/dovecot/conf.d/auth-imap.conf.ext
new file mode 100644
index 0000000..7478889
--- /dev/null
+++ b/roles/IMAP-proxy/files/etc/dovecot/conf.d/auth-imap.conf.ext
@@ -0,0 +1,17 @@
+# Authentication via remote IMAP server. Included from auth.conf.
+#
+# <doc/wiki/PasswordDatabase.IMAP.txt>
+
+passdb {
+ driver = imap
+ args = host=imap.fripost.org port=143
+ default_fields = userdb_imapc_user=%u 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=/home/imapproxy/%d/%n
+}