local6.debug    /var/adm/imapd.log
        auth.debug      /var/adm/auth.log
        configdirectory: /var/imap
        partition-default: /var/spool/imap
        admins: cyrus root
        srvtab: /var/imap/srvtab
        allowanonymouslogin: no
        sasl_passwd_check: shadow
If you don't want your password check to be the default sasldb, you must specify which one of PAM, kerberos_v4, passwd, shadow you wish to use. If PAM is the authentication you desire for example, you would type:
sasl_passwd_check: pam
instead of the line above
This list of instructions will set up all the directories necessary for imap.
mkdir /var/admtouch /var/adm/imapd.log /var/adm/auth.logmkdir /var/imap /var/spool/imap /var/imap/srvtabchown cyrus /var/imap /var/spool/imap /var/imap/srvtabchgrp mail /var/imap /var/spool/imap /var/imap/srvtabchmod 750 /var/imap /var/spool/imap /var/imap/srvtabsu cyrusYou are now the user cyrus. This is necessary for the files to have the correct owner and group. Continue:
tools/mkimapcd /var/imapchattr +S . user quota user/* quota/*chattr +S /var/spool/imapexitYou are now root again. The last command:
chattr +S /var/spool/mqueue
        pop3    110/tcp
        imap    143/tcp
        imsp    406/tcp
        kpop    1109/tcp
        sieve   2000/tcp
        imap    stream  tcp     nowait  cyrus   /usr/cyrus/bin/imapd    imapd
        pop3    stream  tcp     nowait  cyrus   /usr/cyrus/bin/pop3d    pop3d
MAILER(local) MAILER(cyrus) define(`confLOCAL_MAILER',`cyrus') LOCAL_RULE_0 R$=N $: $#local $: $1 R$=N < @ $=w . > $: $#local $: $1 Rbb + $+ < @ $=w . > $#cyrusbb $: $1Use tabs to separate the data (i.e. R$=N has three tabs between it and $: $#local $: $1) Then run:
m4 sendmail.mc > sendmail.cfPostfix is a mail-deliver alternative to sendmail. Most linux installations use sendmail by default. If you use postfix, ignore configuration #3 from the last section and uncomment or add the following line in /etc/postfix/master.cf
cyrus   unix    -       n       n       -       -       pipe    flags=R user=cyrus      argv=/usr/sbin/cyrdeliver -e -m ${extension} ${user}
Also add or uncomment this line in /etc/postfix/main.cf
local_transport = cyrus