Commits

Zhang Huangbin committed 856c059

Add sample config file for Dovecot-2.0.

Comments (0)

Files changed (1)

extra/samples/dovecot2.conf

+# Sample config file for Dovecot-2.0 on RHEL/CentOS.
+
+# Listen addresses.
+#   - '*' means all available IPv4 addresses.
+#   - '[::]' means all available IPv6 addresses.
+# Listen on all available addresses by default
+listen = *
+
+#base_dir = /var/run/dovecot
+mail_plugins = quota
+
+# Enabled mail protocols.
+protocols = pop3 imap sieve
+
+# User/group who owns the message files:
+mail_uid = 500
+mail_gid = 500
+
+# Assign uid to virtual users.
+first_valid_uid = 500
+last_valid_uid = 500
+
+# Logging. Reference: http://wiki2.dovecot.org/Logging
+log_path = /var/log/dovecot.log
+mail_debug = no
+auth_verbose = no
+auth_debug = no
+auth_debug_passwords = no
+# Possible values: no, plain, sha1.
+auth_verbose_passwords = no
+
+# SSL: Global settings.
+# Refer to wiki site for per protocol, ip, server name SSL settings:
+# http://wiki2.dovecot.org/SSL/DovecotConfiguration
+ssl = required
+verbose_ssl = no
+ssl_cert = </etc/pki/tls/certs/iRedMail_CA.pem
+ssl_key = </etc/pki/tls/private/iRedMail.key
+
+# With disable_plaintext_auth=yes AND ssl=required, STARTTLS is mandatory.
+# Set disable_plaintext_auth=no AND ssl=yes to allow plain password transmitted
+# insecurely.
+disable_plaintext_auth = yes
+# Allow plain text password per IP address/net
+#remote 192.168.0.0/24 {
+#   disable_plaintext_auth = no
+#}
+
+# Mail location and mailbox format.
+mail_location = maildir:/%Lh/Maildir/:INDEX=/%Lh/Maildir/
+
+# Authentication related settings.
+# Append this domain name if client gives empty realm.
+auth_default_realm = a.cn
+
+# Authentication mechanisms.
+auth_mechanisms = PLAIN LOGIN
+
+service auth {
+    unix_listener /var/spool/postfix/dovecot-auth {
+        user = postfix
+        group = postfix
+        mode = 0666
+    }
+    unix_listener auth-master {
+        user = vmail
+        group = vmail
+        mode = 0666
+    }
+    unix_listener auth-userdb {
+        user = vmail
+        group = vmail
+        mode = 0660
+    }
+}
+
+# Virtual mail accounts.
+userdb {
+    args = /etc/dovecot/dovecot-ldap.conf
+    driver = ldap
+}
+passdb {
+    args = /etc/dovecot/dovecot-ldap.conf
+    driver = ldap
+}
+
+plugin {
+    auth_socket_path = /var/run/dovecot/auth-master
+
+    quota = dict:user::proxy::quotadict
+    quota_rule = *:storage=1G
+    #quota_rule2 = *:messages=0
+    #quota_rule3 = Trash:storage=1G
+    #quota_rule4 = Junk:ignore
+
+    # Quota warning.
+    # If user suddenly receives a huge mail and the quota jumps from
+    # 85% to 95%, only the 95% script is executed.
+    quota_warning = storage=85%% quota-warning 85 %u
+    quota_warning2 = storage=90%% quota-warning 90 %u
+    quota_warning3 = storage=95%% quota-warning 95 %u
+
+    # Plugin: autocreate. Create and subscribe to default IMAP folders.
+    autocreate = INBOX
+    autocreate2 = Sent
+    autocreate3 = Trash
+    autocreate4 = Drafts
+    autocreate5 = Junk
+    autosubscribe = INBOX
+    autosubscribe2 = Sent
+    autosubscribe3 = Trash
+    autosubscribe4 = Drafts
+    autosubscribe5 = Junk
+
+    # Plugin: expire.
+    expire = Trash 7 Trash/* 7 Junk 30
+    expire_dict = proxy::expire
+
+    # ACL and share folder
+    acl = vfile
+    acl_shared_dict = proxy::acl
+
+    # By default Dovecot doesn't allow using the IMAP "anyone" or
+    # "authenticated" identifier, because it would be an easy way to spam
+    # other users in the system. If you wish to allow it,
+    #acl_anyone = allow
+
+    # Pigeonhole managesieve service.
+    # Reference: http://wiki2.dovecot.org/Pigeonhole/Sieve/Configuration
+    # Per-user sieve settings.
+    sieve_dir = /%Lh/sieve
+    sieve = /%Lh/sieve/dovecot.sieve
+
+    # Global sieve settings.
+    sieve_global_dir = /var/vmail/sieve
+    sieve_global_path = /var/vmail/sieve/dovecot.sieve
+    #sieve_before =
+    #sieve_after =
+}
+
+service quota-warning {
+    executable = script /usr/local/bin/dovecot-quota-warning.sh
+    unix_listener quota-warning {
+        user = vmail
+        group = vmail
+        mode = 0660
+    }
+}
+
+service dict {
+    unix_listener dict {
+        mode = 0660
+        user = vmail
+        group = vmail
+    }
+}
+
+dict {
+    expire = db:/var/lib/dovecot/expire/expire.db
+    quotadict = mysql:/etc/dovecot/dovecot-used-quota.conf
+    acl = mysql:/etc/dovecot/dovecot-share-folder.conf
+}
+
+protocol lda {
+    # Reference: http://wiki2.dovecot.org/LDA
+    mail_plugins = $mail_plugins sieve autocreate
+    auth_socket_path = /var/run/dovecot/auth-master
+    log_path = /var/log/sieve.log
+    lda_mailbox_autocreate = yes
+    postmaster_address = root
+}
+protocol imap {
+    imap_client_workarounds = tb-extra-mailbox-sep
+    mail_plugins = $mail_plugins imap_quota autocreate
+}
+protocol pop3 {
+    mail_plugins = $mail_plugins
+    pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
+    pop3_uidl_format = %08Xu%08Xv
+}
+
+# Login processes. Refer to Dovecot wiki for more details:
+# http://wiki2.dovecot.org/LoginProcess
+service imap-login {
+    service_count = 1
+
+    # To avoid startup latency for new client connections, set process_min_avail
+    # to higher than zero. That many idling processes are always kept around
+    # waiting for new connections.
+    #process_min_avail = 0
+
+    # Process limit.
+    # Increase it if you got similar error message in Dovecot log file:
+    # 
+    # "master: Warning: service(imap-login): process_limit (100) reached,
+    # client connections are being dropped"
+    #
+    #process_limit = $default_process_limit
+    process_limit = 500
+
+    # vsz_limit should be fine at its default 64MB value
+    #vsz_limit = 64M
+}
+service pop3-login {
+    service_count = 1
+}
+
+namespace {
+    type = private
+    separator = /
+    prefix =
+    #location defaults to mail_location.
+    inbox = yes
+}
+
+namespace {
+    type = shared
+    separator = /
+    prefix = Shared/%%u/
+    location = maildir:/%%Lh/Maildir/:INDEX=/%%Lh/Maildir/Shared/%%u
+    # this namespace should handle its own subscriptions or not.
+    subscriptions = yes
+    list = children
+}
+
+# Public mailboxes.
+# Refer to Dovecot wiki page for more details:
+# http://wiki2.dovecot.org/SharedMailboxes/Public
+#namespace {
+#    type = public
+#    separator = /
+#    prefix = Public/
+#
+#    # CONTROL=: Mark this public folder as read-only mailbox
+#    # INDEX=: Per-user \Seen flag
+#    location = maildir:/var/vmail/public/:CONTROL=~/Maildir/public:INDEX=~/Maildir/public
+#
+#    # Allow users to subscribe to the public folders.
+#    subscriptions = yes
+#}