User Tools

Site Tools


build:imap

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
build:imap [2006/03/20 22:58]
70.230.163.142 Removed some old Cyrus info. (CMB)
build:imap [2008/04/06 23:20] (current)
24.217.108.17
Line 6: Line 6:
  
 (See [[http://​www.xman.org/​imap/​pieces.shtml | this article]] for a description of all the pieces involved in email delivery.) (See [[http://​www.xman.org/​imap/​pieces.shtml | this article]] for a description of all the pieces involved in email delivery.)
 +
 +
  
 ===== Installation ===== ===== Installation =====
Line 26: Line 28:
 </​code>​ </​code>​
  
-TODO: Don't forget to create /​etc/​courier/​pop3d.pem and /​etc/​courier/​imapd.pem SSL certificates. ​ 
  
 +
 +
 +
 +
 +
 +
 +
 +==== Security ====
 +The courier installation creates a rather sparse certificate that identifies itself as localhost. It's OK as a start for a default installation but the certificate should be updated to contain the correct values. Here is how to do this:
 +
 +First we need to get a good set of values into the imapd.cnf. This assumes that /​etc/​ssl/​openssl.cnf has been modified to contain the default SLUUG values already, if not see [[http://​wiki.sluug.org/​build/​security#​ssl ]]
 +<​code>​
 +mv /​etc/​courier/​imapd.cnf /​etc/​courier/​imapd.cnf.ORIG
 +cp /​etc/​ssl/​openssl.cnf /​etc/​courier/​imapd.cnf
 +</​code>​
 +
 +Next we should extend the time for the certificates for 10 years. The default is one year, which means a new certificate has to be created every year. I'm too lazy for that. To do this, edit the certificate creation script.
 +<​code>​
 +vi /​usr/​sbin/​mkimapdcert
 +</​code>​
 +
 +Look for the values 365 and add a zero to the end so it is 3650 (ten years)
 +
 +As a safety measure, the mkimapdcert script checks to see if a certificate already exists and will exit if it finds one. So we need to move the old certificate to the side. This is not necessary if that file is a link to /​etc/​courier/​imapd.pem just delete the link.
 +<​code>​
 +mv /​usr/​lib/​courier/​imapd.pem /​usr/​lib/​courier/​imapd.ORIG
 +</​code>​
 +
 +At this point everything should be in place to create a new cert, so run the script, if the openssl.cnf has been previously modified you can just hit enter all the way through to accept the defaults.
 +<​code>​
 +/​usr/​lib/​courier/​mkimapdcert
 +</​code>​
 +
 +Now we have a shiny new certificate that has all the correct values such as bud.sluug.org instead of localhost. Put the cert in place.
 +<​code>​
 +mv /​etc/​courier/​imapd.pem /​etc/​courier/​imapd.pem.ORIG
 +ln -s /​usr/​lib/​courier/​imapd.pem /​etc/​courier/​
 +</​code>​
 +
 +Courier only reads the certificate at start up, so we need to bump it.
 +<​code>​
 +/​etc/​init.d/​courier-imap-ssl reload
 +</​code>​
 +
 +The certificate should be ready to go now. Fire up a mail client and connect to bud.sluug.org and check the certificate that is offered for the correct values, ie bud.sluug.org instead of localhost.
 +
 +Here is the same thing for pop3d
 +<​code>​
 +vi /​usr/​lib/​courier/​mkpop3dcert ​                         # Change 365 to 3650
 +mv /​etc/​courier/​pop3d.cnf /​etc/​courier/​pop3d.cnf.ORIG ​   # Save the old stuff, in case
 +cp /​etc/​ssl/​openssl.cnf /​etc/​courier/​pop3d.cnf ​          # Get SLUUG default
 +ls -l /​usr/​lib/​courier/​pop3d.pem ​                        # See if is a link
 +rm /​usr/​lib/​courier/​pop3d.pem ​                           # Script won't run if this file exists
 +/​usr/​lib/​courier/​mkpop3dcert ​                            # Run the cert script
 +mv /​etc/​courier/​pop3d.pem /​etc/​courier/​pop3d.pem.ORIG ​   # Save the old stuff, in case
 +ln -s /​usr/​lib/​courier/​pop3d.pem /​etc/​courier/ ​          # Create link
 +ls -l /​etc/​courier/ ​                                     # Make sure is OK
 +/​etc/​init.d/​courier-pop-ssl restart ​                     # Reload the cert
 +</​code>​
  
 ===== Configuration ===== ===== Configuration =====
build/imap.1142917103.txt.gz ยท Last modified: 2008/04/02 17:41 (external edit)