Everything almost works.
But I'm stuck at getting courier-imap to do SMTP-relaying via vpopmail's --roaming-users.
According to the FAQ:
2. Courier-IMAP doesn't detect roaming users in the vpopmail library correctly, so force it by doing something like this just before compiling: export CFLAGS="-DHAVE_OPEN_SMTP_RELAY" 3. compile courier-imap with --without-authdaemon --with-authvchkpw 4. Make sure you run your imap server as the same user as your pop server (so open-smtp and tcp.smtp have the same ownership). man couriertcpd for details, but you will change /usr/lib/courier- imap/libexec/imapd.rc something like this:
Change this line: /usr/lib/courier-imap/libexec/couriertcpd -address=$ADDRESS \
To: /usr/lib/courier-imap/libexec/couriertcpd -address=$ADDRESS \ -user=vpopmail -group=vchkpw \
So I do all of this by the book. Now, courier-imap doesn't work if I add the -user=vpopmail -group=vchkpw directives to imapd.rc (as in a vpopmail user can't authenticate).
According to /var/log/messages:
Jul 11 00:53:33 hoss authdaemon: authdaemon: s_connect() failed: Permission denied
If I remove the -user=vpopmail -group=vchkpw directives from imapd.rc, of course, the vpopmail user can authenticate via imap, but simply cannot relay through SMTP.
I assume that I get the s_connect() simply because the permissions to something aren't right. But I haven't a clue as to what that could be! Everything in /home/vpopmail is correct... I'm stumped.
If I can't figure this out, I'll have to go back to POP (which I have successfully got to do roaming-users as per the documentation, and works perfectly), which sucks because I really want to use IMAP exclusively.
Does anyone here have a courier-imap + vpopmail (+ mysql) + qmail setup working properly in this fashion? What am I missing?