summaryrefslogtreecommitdiff
path: root/roles/dovecot/files/dovecot.conf
blob: 3271cbdad6ffdf2217d806ce275bac83727e2889 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# Protocols we want to be serving.
protocols = imap pop3 lmtp

# Path to the mail directory.
mail_location = maildir:/var/mail/%d/%n/Maildir

# Path to SSL certificate files.
ssl_cert = </etc/letsencrypt/live/mail.ilvokhin.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.ilvokhin.com/privkey.pem

# Disable plaintext authentication, only SSL is allowed.
disable_plaintext_auth = yes

service auth {
    # Postfix smtp-auth.
    unix_listener /var/spool/postfix/private/auth {
        mode = 0666
        user = postfix
        group = postfix
    }
}

service lmtp {
    unix_listener /var/spool/postfix/private/dovecot-lmtp {
        mode = 0600
        user = postfix
        group = postfix
    }
}

service imap-login {
    # Do not listen for plain IMAP.
    inet_listener imap {
        port = 0
    }
}

service pop3-login {
    # Do not listen for plain POP3.
    inet_listener pop3 {
        port = 0
    }
}

namespace {
    inbox = yes
    separator = /

    # Create usual mail hierarchy.
    mailbox Sent {
        auto = subscribe
        special_use = \Sent
    }

    mailbox Drafts {
        auto = subscribe
        special_use = \Drafts
    }

    mailbox Trash {
        auto = subscribe
        special_use = \Trash
    }

    mailbox Junk {
        auto = subscribe
        special_use = \Junk
    }
}

# Use separate passwd file for storing passwords.
passdb {
    driver = passwd-file
    args = scheme=SHA512-CRYPT username_format=%u /etc/dovecot/passwd
}

# Use the same separate passwd file for user lookup.
userdb {
    driver = passwd-file
    args = username_format=%u /etc/dovecot/passwd
    override_fields = uid=vmail gid=vmail
}