Courier Email Server

From ArchWiki

Merge-arrows-2.pngThis article or section is a candidate for merging with Courier Mail Server.Merge-arrows-2.png

Notes: Same software. (Discuss in Talk:Courier Email Server)

This is a small howto on how to install an imap-Server with Courier-Imap, SSL-Encryption and grabbing all the other mail-accounts with fetchmail. Procmail is responsible for delivering the Mails to the different Users.

You can fetch your Mail from this IMAP-Server with every Mail-Client capable of communicating with IMAP.

For testing purposes you should create your own email-account, e.g. www.gmx.de.

For more complex setup see Creating a Linux Mail Server (Postfix, Procmail, Fetchmail, SpamBayes, Courier-imap, Mutt, SquirrelMail)

Installation

Install fetchmail, procmailAUR, and courier-imapAUR.

Using fetchmail

Just make .fetchmailrc in your home-directory and add the following lines:

poll pop.gmx.de with proto POP3
 user "username" there with password "passwd" is "morphus" here
mda "/usr/bin/procmail -d %s"
  • username - Your username on the pop3-server
  • passwd - Your password on the pop3-server
  • morphus - Your local account where the mail belongs to

Using procmail

Create and edit .procmailrc in your home-directory

PATH=$HOME/bin:/usr/bin:/bin:/usr/local/bin:.
MAILDIR=$HOME/Maildir/
DEFAULT=$HOME/Maildir/
LOGFILE=$MAILDIR/procmail.log

Now secure your .fetchmailrc since they contain passwords

chmod 600 .fetchmailrc

First Try with procmail and fetchmail working together

Send some bulk-mails to your test-account. Then run

fetchmail -av

Fetchmail echos the communication with the pop-Server and after the run finished you should find some files in your Mail-Folder with the Mails.

Configuring Courier Imap

Run the command

maildirmake Maildir

with each user you want to have an imap-account

Start/enable courier-imapd.service.

You should be able to connect from your console with telnet like this:

[morphus@spielemorph ~]$ telnet 192.168.6.1 143
Trying 192.168.6.1...
Connected to 192.168.6.1.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT
 THREAD{{ic|REFERENCES SORT QUOTA IDLE ACL ACL2}}UNION STARTTLS] Courier-IMAP ready.
Copyright 1998-2004 Double Precision, Inc.  See COPYING for distribution information.
1 login morphus passwd
1 OK LOGIN Ok.

This means everything is okay and you can connect. Your mail should be delivered to this Maildirectory and you should be able to connect with any imap-capable program.

Doing some cron-jobs

Just add the fetchmail -av command to the users cron-list, e.g. every 10 minutes he should grep the emails

'/10 ' ' ' * /usr/bin/fetchmail -av