Binding Cyrus to Listen on one IP
John Straiton
jsmailing at clickcom.com
Mon Sep 16 13:06:46 EDT 2002
I am having a problem with Cyrus that I was unable to find an answer to
using the mailing list archives or google groups. I'm pretty familiar
with setting up simple Cyrus installs (done it about 10 times now), but
this one has got me stuck.
I'm trying to get cyrus to work on the same machine as my sendmail/
uwimapd/ qpopper server whilst we get through a migration to Cyrus. I've
configured our inetd to only listen on ip address so that imap-uw and
qpopper will not listen on the new IP address that has been added to the
machine and tested that in fact they are not listening on that new
address.
I then tried to configure Cyrus to bind only to the single address. In
looking at the man page for cyrus.conf(5), it describes:
listen=<no default>
path
[ host : ] port
where path is the explicit path to a UNIX socket,
host is either the hostname or bracket-enclosed IP
address of a network interface, and port is either a
port number or service name (as listed in /etc/ser-
vices).
Now my default configuration showed things like
imap cmd="imapd" listen="imap" prefork=0
So following the description there, I altered it to say
imap cmd="imapd" listen="[my.new.ip.address:]imap"
prefork=0
(my.new.ip.address being a real IP, bound to the machine and verified)
When I try to start cyrus, I get a syslog message of
Sep 16 12:56:51 courier master[25138]: process started
Sep 16 12:56:51 courier master[25139]: about to exec
/usr/local/cyrus/bin/ctl_mboxlist
Sep 16 12:56:51 courier ctl_mboxlist[25139]: running mboxlist recovery
Sep 16 12:56:52 courier ctl_mboxlist[25139]: done running mboxlist
recovery
Sep 16 12:56:52 courier master[25141]: about to exec
/usr/local/cyrus/bin/ctl_deliver
Sep 16 12:56:52 courier master[25138]: unable to find command or port
for
Sep 16 12:56:52 courier master[25138]: exiting
No, I'm not missing anything there, it really does say "or port for" and
that's it (found a bug?).
Assuming that the man page text was being misunderstood by me, I also
tried:
imap cmd="imapd" listen="[my.new.ip.address]:imap"
prefork=0
imap cmd="imapd" listen="[my.new.ip.address]imap"
prefork=0
imap cmd="imapd" listen="my.new.ip.address:imap"
prefork=0
Thoughts? How can I get this thing restricted to a single IP?
John Straiton
jks at clickcom.com
Clickcom, Inc
704-365-9970x101
More information about the Info-cyrus
mailing list