Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Mail Systems
Eclipse Documentation

How To Guides
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Problem Solutions
Privacy Policy




IMAP: Mail Server

To set up an IMAP mail server install task-imap which installs wu-imap. IMAP will then be running.

A sample IMAP session:

  $ telnet imaphost 143
    Trying ::1... 
    Connected to localhost. 
    Escape character is '^]'. 
    * OK Microsoft Exchange IMAP4rev1 server version 5.5.2655.37 
    (imaphost.act.cmis.CSIRO.AU) ready

To test a connection:

  $ telnet localhost 143
  Connected to athens. 
  Escape character is '^]'. 
  * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION] Courier-IMAP ready. Copyright 1998-2004 Double Precision, Inc.  See COPYING for distribution information. 
  ab login kayon PaSsWoRd
  ab OK LOGIN Ok.

To create a virtual user account to access a mail account through a different user with a different password (so that you might reduce the risk of disclosing your normal login password) you can create a virtual user and store the password in a userdb database that courier-imap will use for authentication.

First, create the ``pretend'' user:

  # userdb kayonmail set home=/home/kayon mail=/home/kayon/Maildir \
           uid=kayon gid=kayon

Create a password for this user:

  # userdbpw | userdb kayonmail set imappw

Then compile the database:

  # makeuserdb

Now add authuserdb to the authorisation methods allowed and restart the authdaemon:

  # emacs -nw /etc/courier/authdaemonrc
  authmodulelist="authpam authuserdb"
  # wajig restart courier-authdaemon

Swap the order of the authpam and authuserdb if you want to check the userdb before the system password, as might be the case when your ``virtual'' username is the same as your real username. Note that the system password will also still be accepted! Thus, to avoid making that mistake, it might be best to go with a different username. However, this doesn't really fix the problem since you might simply forget and still type your system password, and it will work! You could drop authpam altogether and all users will then need to be added to userdb.

You can then check that the user and password work with a telnet to the server as described above.

To remove a user from the database:

  # userdb kayonmail del
  # makeuserdb

Copyright © 1995-2006 [email protected]

  Published under the terms fo the GNU General Public License Design by Interspire