BSD DevCenter
oreilly.comSafari Books Online.Conferences.


Running Cyrus IMAP
Pages: 1, 2, 3, 4

The primary configuration file for Cyrus is /usr/local/etc/imapd.conf. Replace your imapd.conf with the following. (The bracketed numbers refer to footnotes; remove those.)

configdirectory: /var/imap [1]
partition-default: /var/imap/spool
sievedir: /var/imap/sieve
admins: user1@domain1 user2@domain2 admin [2]
allowanonymouslogin: no
autocreatequota: 10240
reject8bit: no
quotawarn: 90
timeout: 30
poptimeout: 10
dracinterval: 0
drachost: localhost
sasl_pwcheck_method: auxprop
lmtp_overquota_perm_failure: no
unixhierarchysep: no
virtdomains: userid
defaultdomain: domain1 [3]
loginrealms: domain1,domain2 [4]

[1] To use a different location for your email storage, change the configdirectory, partition-default, and sievedir to point to your preferred location. The partition-default doesn't have to be inside the same directory as the configdirectory, but it makes it easier to back up if it is.

[2] If you want an ID to manage all domains, create it without a domain. IDs created with domains can manage only their own domain.

[3] This is the domain the system will add if you create a user without adding a domain.

[4] List all the domains for which you plan to host email. For an explanation of the options in imapd.conf, see /usr/local/etc/imapd.conf.original and man imapd.conf.

Now you must create several directories and files to prepare Cyrus for operation. Become user cyrus and run mkimap:

# su cyrus

As root, start Cyrus:

# /usr/local/etc/rc.d/ start

To test whether Cyrus is running, use this:

#telnet localhost 143
Escape character is '^]'.
* OK Cyrus IMAP4 v2.2.12 server ready

To exit, type a1 logout

For each mailbox you will host, you must create an ID in SASL2 and in Cyrus. For example, here's how to create the user test. Replace domain1 with a valid domain you plan to host. First, create the user in SASL2:

#saslpasswd2 -c test@domain1
Again (for verification):

# sasldblistusers2 userPassword

Then create it in Cyrus. You will need the password you used for user admin. If you don't recall the password, reset it using saslpasswd2 admin:

#cyradm --user admin localhost
cm user.test@domain1
test@domain1 (\HasNoChildren)

Pages: 1, 2, 3, 4

Next Pagearrow

Sponsored by: