2. Technologies

2.1. The Postfix MTA

Quoting www.postfix.org ╗Postfix attempts to be fast, easy to administer, and secure, while at the same time being sendmail compatible enough to not upset existing users. Thus, the outside has a sendmail-ish flavor, but the inside is completely different.½

Doesn't it look impressive? - It looks much more complicated as it is. Postfix is indeed nice to configure and handle

Unlike sendmail, postfix is not one monolithic program, it is a compilation of small programs, each of it has a specialized function. At this place I don't what to go into details with program does what. If you are interested how Postfix is working, please see the documentation at http://www.postfix.org/docs.html

In this document you will find the information what to put in the config files

2.2. Cyrus IMAP

The Cyrus IMAP is developed and maintained by Carnegie Mellon University.

Unlike the WU-IMAPd Cyrus is using its own method to store the users mail. The data is stored in a database, this makes Cyrus so performant. Especially with lots of users and/or lot of big emails, there is nothing such fast as the Cyrus IMAP-server.

Another very important feature is, you don't need a local Un*x user for each account. All users are authenticated by the IMAP-Server. This makes it a great solution for really huge base of users.

User administration is done by special IMAP-commands. This allows you to eighter use the commandline interface, or use one of the available Webinterfaces. This Method is much more secure than a Webinterface to /etc/passwd !

Since CMU changed the license policy for Cyrus, this software is going to be used by much more users

2.3. MySQL Database

MySQL is a very fast, powerful and very nice to handle Database.

Since Cyrus can authenticate its users with pam, you can use pam_mysql as a connector to the Userdatebase stored in MySQL. This allows you to create a nice Webinterface for your users for changing passwords, define and delete aliases and more.

2.4. pam_mysql

pam means "Pluggable authentication module" and was originally proposed by some people at Sun. In meantime a lot of modules have been developed. One of them is an interface to MySQL

With pam_mysql you to store the users password in a mysql database. Further, Postfix is able to lookup aliases from a MySQL-table. At the end of the day, you have a base for all administrative tasks to be done by the Sysadmin.

Further you will be able to delegate some tasks to Powerusers, e.g. creating Accounts for a particular Domain. Changing passwords and creating new aliases can be delegated to the user. At the end of the day you as a Sysadmin have the time to do some more productive tasks, or write a HOWTO for the Linux Documentation Project :-)

2.5. Web-cyradm Webinterface

Web-cyradm is the Webinterface that allows you to perform the administrative tasks to your mailsystem This Screenshot shows the domain-administration part of Web-cyradm.

Web-cyradm is written in PHP, which is often installed on webservers. Time to set up Web-cyradm takes just a few minutes.

At the time being, Web-cyradm does not support different roles for its users. So you cannot use it as a frontend for your Powerusers (Domainadmins) or endusers. This Part of Web-cyradm is being developed, and should be ready for distribution in a few weeks (approx. end of may 2002.