courier-imap ist ein standardkonformer [[imap]]-Server und Teil des [[Courier]] MailServer``s.

courier-imap funktioniert ausschließlich mit [[Maildir]]s und wird häufig auch in Verbindung mit anderen MailServer``n wie [[Postfix]], [[exim]] oder [[QMail]] eingesetzt.

Homepage: http://www.inter7.com/courierimap/

Lizenz: [[GPL]]

= Tips & Tricks =

== Gemeinsame Ordner ==

Das Anlegen von gemeinsamen Ordnern (''shared folders''), wird im [[http://www.inter7.com/courierimap/README.sharedfolders.html|README]] ausführlich erklärt.

Hier ein paar Hinweise zur Einstellungen verschiedener [[MUA]]s.

 * [[Evolution]]:
 Der Schalter "Über vom Server vorgegeben Ordner-Namensraum hinwegsetzen" muss angeschaltet sein. Der Namensraum ist '''shared.'''.
 Zu finden ist das bei den Empfangsoptionen.
 * [[kmail]]:
 Der Schalter "Versteckte Ordner anzeigen" muss aktiv sein.
 * [[sylpheed]]:
 Bei den Accounteinstellungen unter dem Reiter "Speziell" muss als IMAP-Serververzeichnis '''shared''' eingetragen werden.

'''Achtung:''' bei Evolution und sylpheed hat man dann keinen Zugriff mehr auf die normalen Unterordner. Eventuell kann man sich durch das Anlegen von zwei Accounts behelfen. Das ist ein Fehler der Clients und nicht von courier-imap.

== Migration Cyrus -> Courier ==
Unter [[http://www.madness.at/projects/]] gibt es ein kleines Skript, welches Mails, die im Format von CyrusImap vorliegen in das Maildir Format (welches [[Courier]] nutzt) konvertiert.

'''Beschreibung von der Projektseite''':

''cyrus2courier is a nice little tool to convert a single mailbox from Cyrus-Imap into the Maildir++ format used by the Courier-Imap and Dovecot IMAP servers.''

== Anfänger-Installation von Courier Imap ==
Kurze Anleitung zum Installieren von Courierimap.
Benötigt wird ein bereits existierendes maildir-Verzeichnis. Dieses wird normalerweise von [[sendmail]] oder [[fetchmail]] gefüllt.
 1. Sources herunterladen von [[http://www.inter7.com/courierimap/courierimap.html]]
 2. Als normaler User entpacken mit {{{tar -xjf courier-imap-x.y.tar.bz2}}}
 3. In das entpackte Verzeichnis wechseln 
 4. Da wir als Authenticationmodul authshadow bzw. authpwd nehmen werden, sieht der configure befehl folgendermassen aus:
    * {{{ ./configure --prefix=/usr/local/courier-imap --disable-root-check --without-authpam --without-authldap --with-authpwd --without-authmysql --without-authpgsql --with-authshadow --without-authuserdb --without-authcustom --without-authcram --without-authdaemon --without-authvchkpw --with-ssl }}}
 5. Im gleichen Verzeichnis make eintippen
 6. Root werden (su root)
 7. make install
 8. make install-configure
 9. Im Verzeichnis /usr/local/courier-imap/etc stehen die Konfigurationsdateien für courier-imap. Hier muss die Datei imapd angepasst werden.
 10. In diese Datei muss ans Ende folgende Zeile geschrieben werden: {{{MAILDIR=.maildir}}} Dadurch werden die Mails lokal beim Benutzer im Verzeichnis ~/.maildir/ abgelegt. (Ergänzung von msc@homofaber.com: Bei mir stand dort bereits als letzte Zeile {{{MAILDIRPATH=Maildir}}}. Hat sich der Variablenname möglicherweise in der aktuellen Version von Courier geändert? Letztendlich funktioniert hat deshalb bei mir nur der unter Punkt 11 genannte Befehl in folgender abgewandelter Form: /usr/local/courier-imap/bin/maildirmake Maildir. (beachte "Maildir" statt ".maildir". Ich mag mich irren.))
 11. Außerdem sollte man die gleichzeitig mögliche Anzahl von Verbindungen von einer ip erhöhen. 
 11. Sollte dieses Verzeichnis noch nicht existieren, muss man es mit dem Befehl /usr/local/courier-imap/bin/maildirmake .maildir vom jeweiligen Benutzer in seinem Home-Verzeichnis anlegen.
 12. /usr/local/courier-imap/libexec/imapd.rc start startet imapd.
 13. Testen kann man den Server jetzt entweder mit einem imap-Client ([[ThunderBird]]), oder aber als quick`n dirty mit [[telnet]]. 
     * Dazu schreibt man in die gleiche Konsole {{{ telnet localhost 143 }}}
     * Die Ausgabe sollte ungefähr so aussehen: 
{{{ * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE STARTTLS] Courier-IMAP ready. Copyright 1998-2003 Double Precision, Inc.  See COPYING for distribution information. }}}
     * Jetzt kann man mit dem Befehl {{{1 login username password}}} sich versuchen einzuloggen. Herauskommen sollte {{{1 OK LOGIN Ok.}}}

== Server sicher machen durch verschlüsselte Übertragungen ==
Vorraussetzung ist obige Anleitung. Nachdem man diese befolgt hat, und ein bißchen rumgespielt hat, ist es sinnvoll, den ganzen Imap-Verkehr zu verschlüsseln. 
 1. vi /usr/local/courier-imap/etc/imapd.cnf
 2. Hier sollte vor allen Dingen die Zeile CN= angepasst werden auf CN=domainname, d.h. auf den Servernamen
 3. /usr/local/courier-imap/mkimapdcert aufrufen, hierbei wird das Zertifikat erstellt.
 4. /usr/local/courier-imap/libexec/imapd.rc stop. Der alte Mailserver wird gestoppt.
 5. /usr/local/courier-imap/libexec/imapd-ssl.rc start. Der neue Mailserver wird gestartet.
 6. Verbindungen gehen jetzt nur noch verschlüsselt, der Port ist auf 993 geändert worden.
 7. Unter [[ThunderBird]] kann man ganz einfach die Verschlüsselung in den Account Settings einstellen. Mit anderen Email-Clients habe ich leider keine Ehrfahrung...