Jorey Bump wrote:

Apparently cyradm does not have STARTTLS support, yet, so you can do this in cyrus.conf to ensure that no plaintext service is exposed to the Internet:

  imap          cmd="imapd" listen="localhost:imap" prefork=0
  imaps         cmd="imapd -s" listen="imaps" prefork=0
  # pop3                cmd="pop3d" listen="localhost:pop3" prefork=0
  pop3s         cmd="pop3d -s" listen="pop3s" prefork=0

Granted, you sacrifice STARTTLS on ports 110 & 143, but not many clients seem to support it anyway, and this arrangement will help to prevent accidental transmission of plaintext passwords.

I should also point out that this will restrict the use of cyradm to the localhost. While I assume this is normally the case, cyradm does have the ability to connect to other hosts (much like the mysql client). If this is important to you, you will need to investigate other authentication mechanisms, use a packet filter to control access to the unencrypted port (still risky, depending on the location of the client), or offer some code that allows cyradm to use STARTTLS.

As Nikola pointed out, another option is to use an SSL (or SSH) tunnel. These always feel kludgy to me, though, and usually indicate the need for a better solution.
----
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

Reply via email to