Postfix and Cyrus Imapd with multiple domains

Bruce H bruceh at brucehbase.org
Mon Oct 11 21:29:09 EDT 2004


I'm setting up a Linux server using Cyrus 2.1.16 and Postfix 2.1.0.  I
currently have Postfix setup
to deliver mail through lmtp to Cyrus.  The server will be hosting two
domains (on the same IP address)
so I have setup Cyrus IMAP to use usernames that are the entire user's email
address, i.e.

"testuser at domain.com".

 I was able to get this working by setting:

unixhierarchysep: yes

 in the imapd.conf file.  This allowed me to use cyradm to create new
mailboxes like this:
"cm user/testuser at domain.com"

The IMAP portion seems to work fine.  I can login to the imap server using
the full email address as
described above and I can see the mailbox with no problems.

My problem, however, is getting incoming mail to the mailbox.  As I said,
Postfix is setup to use lmtp for mail delivery and there doesn't seem to be
any problem in it connecting and trying to send the mail to cyrus, however,
the Cyrus lmtp agent always seems to be sending back a 550 User unknown
error back to Postfix.   The error in the log is something like this:

relay=public/lmtp[public/lmtp], delay=0, status=bounced (host
public/lmtp[public/lmtp] said:
550-Mailbox unknown. Either there is no mailbox associated with this
550-name or you do not
have authorization to see it.

The RCPT TO in the log seems to show the correct address
(testuser at domain.com).

For Postfix, I have a /etc/postfix/vmailbox file that right now simply has:
testuser at domain.com      whatever

My /etc/postfix/main.cf has the following lines:
virtual_transport = lmtp:unix:public/lmtp
virtual_mailbox_domains = domain.com, domain2.com
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_alias_maps = hash:/etc/postfix/virtual

If I go back into cyradm and create a mailbox for "user/testuser", then the
mail does get delivered.  So, I'm not sure if the problem lies with
cyrus-imap not translating the RCPT TO address into the proper mailbox or
whether Postfix is not supplying some key piece of info that the cyrus lmtp
agent needs to know in order to route the mail properly.

Anyone have any ideas?  Would it help to change the transport to a piped
command where I might have some control over the mailbox name?







---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html




More information about the Info-cyrus mailing list